360nemz if you installed the latest version, you'll have to go into the Tags admin page and pick which tags you want to designate as a question and answer tag. There should be two options in the edit and create tags modals.

    Hi! I'm having problem enabling this extension.
    Console Error: CR
    Forum Log: [2021-08-26 08:40:44] flarum.ERROR: TypeError: explode(): Argument #2 ($string) must be of type string, array given in /app/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php:25
    Stack trace:
    #0 /app/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php(25): explode()
    #1 [internal function]: Illuminate\Filesystem\Filesystem::{closure}()
    #2 /app/vendor/flarum/core/src/Database/Migrator.php(202): call_user_func()
    #3 /app/vendor/flarum/core/src/Database/Migrator.php(133): Flarum\Database\Migrator->runClosureMigration()
    #4 /app/vendor/flarum/core/src/Database/Migrator.php(116): Flarum\Database\Migrator->runUp()
    #5 /app/vendor/flarum/core/src/Database/Migrator.php(90): Flarum\Database\Migrator->runMigrationList()
    #6 /app/vendor/flarum/core/src/Extension/Extension.php(482): Flarum\Database\Migrator->run()
    #7 /app/vendor/flarum/core/src/Extension/ExtensionManager.php(311): Flarum\Extension\Extension->migrate()
    #8 /app/vendor/flarum/core/src/Extension/ExtensionManager.php(182): Flarum\Extension\ExtensionManager->migrate()
    #9 /app/vendor/flarum/core/src/Api/Controller/UpdateExtensionController.php(46): Flarum\Extension\ExtensionManager->enable()
    #10 /app/vendor/flarum/core/src/Http/RouteHandlerFactory.php(41): Flarum\Api\Controller\UpdateExtensionController->handle()
    #11 /app/vendor/flarum/core/src/Http/Middleware/ExecuteRoute.php(27): Flarum\Http\RouteHandlerFactory->Flarum\Http\{closure}()
    #12 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ExecuteRoute->process()
    #13 /app/vendor/kilowhat/flarum-ext-audit-free/src/Middlewares/SetLoggerActor.php(28): Laminas\Stratigility\Next->handle()
    #14 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Kilowhat\Audit\Middlewares\SetLoggerActor->process()
    #15 /app/vendor/flarum/core/src/Api/Middleware/ThrottleApi.php(33): Laminas\Stratigility\Next->handle()
    #16 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Api\Middleware\ThrottleApi->process()
    #17 /app/vendor/flarum/core/src/Http/Middleware/CheckCsrfToken.php(44): Laminas\Stratigility\Next->handle()
    #18 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\CheckCsrfToken->process()
    #19 /app/vendor/flarum/core/src/Http/Middleware/ResolveRoute.php(67): Laminas\Stratigility\Next->handle()
    #20 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ResolveRoute->process()
    #21 /app/vendor/flarum/core/src/Http/Middleware/SetLocale.php(51): Laminas\Stratigility\Next->handle()
    #22 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\SetLocale->process()
    #23 /app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithHeader.php(56): Laminas\Stratigility\Next->handle()
    #24 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\AuthenticateWithHeader->process()
    #25 /app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithSession.php(31): Laminas\Stratigility\Next->handle()
    #26 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\AuthenticateWithSession->process()
    #27 /app/vendor/flarum/core/src/Http/Middleware/RememberFromCookie.php(52): Laminas\Stratigility\Next->handle()
    #28 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\RememberFromCookie->process()
    #29 /app/vendor/flarum/core/src/Http/Middleware/StartSession.php(61): Laminas\Stratigility\Next->handle()
    #30 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\StartSession->process()
    #31 /app/vendor/flarum/core/src/Api/Middleware/FakeHttpMethods.php(29): Laminas\Stratigility\Next->handle()
    #32 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Api\Middleware\FakeHttpMethods->process()
    #33 /app/vendor/flarum/core/src/Http/Middleware/ParseJsonBody.php(28): Laminas\Stratigility\Next->handle()
    #34 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ParseJsonBody->process()
    #35 /app/vendor/flarum/core/src/Http/Middleware/HandleErrors.php(57): Laminas\Stratigility\Next->handle()
    #36 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\HandleErrors->process()
    #37 /app/vendor/flarum/core/src/Http/Middleware/InjectActorReference.php(25): Laminas\Stratigility\Next->handle()
    #38 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\InjectActorReference->process()
    #39 /app/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(76): Laminas\Stratigility\Next->handle()
    #40 /app/vendor/middlewares/request-handler/src/RequestHandler.php(84): Laminas\Stratigility\MiddlewarePipe->process()
    #41 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Middlewares\RequestHandler->process()
    #42 /app/vendor/middlewares/base-path-router/src/BasePathRouter.php(101): Laminas\Stratigility\Next->handle()
    #43 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Middlewares\BasePathRouter->process()
    #44 /app/vendor/laminas/laminas-stratigility/src/Middleware/OriginalMessages.php(36): Laminas\Stratigility\Next->handle()
    #45 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Laminas\Stratigility\Middleware\OriginalMessages->process()
    #46 /app/vendor/middlewares/base-path/src/BasePath.php(73): Laminas\Stratigility\Next->handle()
    #47 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Middlewares\BasePath->process()
    #48 /app/vendor/flarum/core/src/Http/Middleware/ProcessIp.php(24): Laminas\Stratigility\Next->handle()
    #49 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ProcessIp->process()
    #50 /app/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(76): Laminas\Stratigility\Next->handle()
    #51 /app/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(65): Laminas\Stratigility\MiddlewarePipe->process()
    #52 /app/vendor/laminas/laminas-httphandlerrunner/src/RequestHandlerRunner.php(96): Laminas\Stratigility\MiddlewarePipe->handle()
    #53 /app/vendor/flarum/core/src/Http/Server.php(44): Laminas\HttpHandlerRunner\RequestHandlerRunner->run()
    #54 /app/public/index.php(22): Flarum\Http\Server->listen()
    #55 {main}
    [2021-08-26 08:40:51] flarum.ERROR: TypeError: explode(): Argument #2 ($string) must be of type string, array given in /app/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php:25
    Stack trace:
    #0 /app/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php(25): explode()
    #1 [internal function]: Illuminate\Filesystem\Filesystem::{closure}()
    #2 /app/vendor/flarum/core/src/Database/Migrator.php(202): call_user_func()
    #3 /app/vendor/flarum/core/src/Database/Migrator.php(133): Flarum\Database\Migrator->runClosureMigration()
    #4 /app/vendor/flarum/core/src/Database/Migrator.php(116): Flarum\Database\Migrator->runUp()
    #5 /app/vendor/flarum/core/src/Database/Migrator.php(90): Flarum\Database\Migrator->runMigrationList()
    #6 /app/vendor/flarum/core/src/Extension/Extension.php(482): Flarum\Database\Migrator->run()
    #7 /app/vendor/flarum/core/src/Extension/ExtensionManager.php(311): Flarum\Extension\Extension->migrate()
    #8 /app/vendor/flarum/core/src/Extension/ExtensionManager.php(182): Flarum\Extension\ExtensionManager->migrate()
    #9 /app/vendor/flarum/core/src/Api/Controller/UpdateExtensionController.php(46): Flarum\Extension\ExtensionManager->enable()
    #10 /app/vendor/flarum/core/src/Http/RouteHandlerFactory.php(41): Flarum\Api\Controller\UpdateExtensionController->handle()
    #11 /app/vendor/flarum/core/src/Http/Middleware/ExecuteRoute.php(27): Flarum\Http\RouteHandlerFactory->Flarum\Http\{closure}()
    #12 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ExecuteRoute->process()
    #13 /app/vendor/kilowhat/flarum-ext-audit-free/src/Middlewares/SetLoggerActor.php(28): Laminas\Stratigility\Next->handle()
    #14 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Kilowhat\Audit\Middlewares\SetLoggerActor->process()
    #15 /app/vendor/flarum/core/src/Api/Middleware/ThrottleApi.php(33): Laminas\Stratigility\Next->handle()
    #16 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Api\Middleware\ThrottleApi->process()
    #17 /app/vendor/flarum/core/src/Http/Middleware/CheckCsrfToken.php(44): Laminas\Stratigility\Next->handle()
    #18 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\CheckCsrfToken->process()
    #19 /app/vendor/flarum/core/src/Http/Middleware/ResolveRoute.php(67): Laminas\Stratigility\Next->handle()
    #20 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ResolveRoute->process()
    #21 /app/vendor/flarum/core/src/Http/Middleware/SetLocale.php(51): Laminas\Stratigility\Next->handle()
    #22 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\SetLocale->process()
    #23 /app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithHeader.php(56): Laminas\Stratigility\Next->handle()
    #24 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\AuthenticateWithHeader->process()
    #25 /app/vendor/flarum/core/src/Http/Middleware/AuthenticateWithSession.php(31): Laminas\Stratigility\Next->handle()
    #26 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\AuthenticateWithSession->process()
    #27 /app/vendor/flarum/core/src/Http/Middleware/RememberFromCookie.php(52): Laminas\Stratigility\Next->handle()
    #28 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\RememberFromCookie->process()
    #29 /app/vendor/flarum/core/src/Http/Middleware/StartSession.php(61): Laminas\Stratigility\Next->handle()
    #30 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\StartSession->process()
    #31 /app/vendor/flarum/core/src/Api/Middleware/FakeHttpMethods.php(29): Laminas\Stratigility\Next->handle()
    #32 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Api\Middleware\FakeHttpMethods->process()
    #33 /app/vendor/flarum/core/src/Http/Middleware/ParseJsonBody.php(28): Laminas\Stratigility\Next->handle()
    #34 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ParseJsonBody->process()
    #35 /app/vendor/flarum/core/src/Http/Middleware/HandleErrors.php(57): Laminas\Stratigility\Next->handle()
    #36 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\HandleErrors->process()
    #37 /app/vendor/flarum/core/src/Http/Middleware/InjectActorReference.php(25): Laminas\Stratigility\Next->handle()
    #38 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\InjectActorReference->process()
    #39 /app/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(76): Laminas\Stratigility\Next->handle()
    #40 /app/vendor/middlewares/request-handler/src/RequestHandler.php(84): Laminas\Stratigility\MiddlewarePipe->process()
    #41 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Middlewares\RequestHandler->process()
    #42 /app/vendor/middlewares/base-path-router/src/BasePathRouter.php(101): Laminas\Stratigility\Next->handle()
    #43 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Middlewares\BasePathRouter->process()
    #44 /app/vendor/laminas/laminas-stratigility/src/Middleware/OriginalMessages.php(36): Laminas\Stratigility\Next->handle()
    #45 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Laminas\Stratigility\Middleware\OriginalMessages->process()
    #46 /app/vendor/middlewares/base-path/src/BasePath.php(73): Laminas\Stratigility\Next->handle()
    #47 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Middlewares\BasePath->process()
    #48 /app/vendor/flarum/core/src/Http/Middleware/ProcessIp.php(24): Laminas\Stratigility\Next->handle()
    #49 /app/vendor/laminas/laminas-stratigility/src/Next.php(51): Flarum\Http\Middleware\ProcessIp->process()
    #50 /app/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(76): Laminas\Stratigility\Next->handle()
    #51 /app/vendor/laminas/laminas-stratigility/src/MiddlewarePipe.php(65): Laminas\Stratigility\MiddlewarePipe->process()
    #52 /app/vendor/laminas/laminas-httphandlerrunner/src/RequestHandlerRunner.php(96): Laminas\Stratigility\MiddlewarePipe->handle()
    #53 /app/vendor/flarum/core/src/Http/Server.php(44): Laminas\HttpHandlerRunner\RequestHandlerRunner->run()
    #54 /app/public/index.php(22): Flarum\Http\Server->listen()
    #55 {main}

    I'm using freeflarum and SKevo said that I should contact the author of the extension.

      TheMarci You have an array instead of a string when migrating tables and doing explode. What's on the 25th line here?
      /app/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php:25

        Extension makes forum unable to load on a FreeFlarum forum (ref.).

        Using Best Answer ver. 1.1.2

        PHP Flarum Info:

        Flarum core 1.0.4
        PHP version: 8.0.9
        Loaded extensions: Core, date, libxml, openssl, pcre, zlib, filter, hash, json, pcntl, Reflection, SPL, session, standard, sodium, mysqlnd, PDO, xml, calendar, ctype, curl, dom, mbstring, FFI, fileinfo, ftp, gd, gettext, gmp, iconv, intl, exif, mysqli, pdo_mysql, Phar, posix, readline, shmop, SimpleXML, sockets, sysvmsg, sysvsem, sysvshm, tokenizer, xmlreader, xmlwriter, xsl, Zend OPcache
        +---------------------------------+--------------+--------+
        | Flarum Extensions               |              |        |
        +---------------------------------+--------------+--------+
        | ID                              | Version      | Commit |
        +---------------------------------+--------------+--------+
        | flarum-flags                    | v1.0.0       |        |
        | flarum-approval                 | v1.0.0       |        |
        | flarum-tags                     | v1.0.3       |        |
        | flarum-suspend                  | v1.0.0       |        |
        | flarum-markdown                 | v1.0.1       |        |
        | v17development-seo              | v1.8.0       |        |
        | fof-upload                      | 1.0.2        |        |
        | fof-socialprofile               | 1.1.0        |        |
        | fof-share-social                | 1.0.0        |        |
        | fof-nightmode                   | 1.0.0        |        |
        | fof-formatting                  | 1.0.0        |        |
        | fof-byobu                       | 1.0.0-beta.9 |        |
        | malago-achievements             | 0.5.0        |        |
        | michaelbelgium-discussion-views | v7.0.0       |        |
        | matteocontrini-imgur-upload     | v3.9.1       |        |
        | fof-user-bio                    | 1.0.0        |        |
        | fof-profile-image-crop          | 1.0.0        |        |
        | fof-pages                       | 1.0.1        |        |
        | fof-discussion-thumbnail        | 1.0.1        |        |
        | antoinefr-online                | v1.0.1       |        |
        | migratetoflarum-canonical       | 1.0.0        |        |
        | fof-default-user-preferences    | 1.0.0        |        |
        | fof-sitemap                     | 1.0.0        |        |
        | flarum-subscriptions            | v1.0.0       |        |
        | flarum-sticky                   | v1.0.0       |        |
        | flarum-statistics               | v1.0.0       |        |
        | flarum-mentions                 | v1.0.0       |        |
        | flarum-lock                     | v1.0.0       |        |
        | flarum-likes                    | v1.0.0       |        |
        | flarum-lang-english             | v1.0.0       |        |
        | flarum-emoji                    | v1.0.0       |        |
        | flarum-bbcode                   | v1.0.0       |        |
        | fof-polls                       | 1.0.3        |        |
        | fof-reactions                   | 1.0.0        |        |
        | fof-user-directory              | 1.0.2        |        |
        | jslirola-login2seeplus          | v0.2         |        |
        | fof-links                       | 1.0.0        |        |
        | therealsujitk-gifs              | v4.1.0       |        |
        | fof-default-group               | 1.0.0        |        |
        | fof-merge-discussions           | 1.0.0        |        |
        | fof-oauth                       | 1.0.1        |        |
        | fof-spamblock                   | 1.0.0        |        |
        | fof-split                       | 1.0.0        |        |
        | sycho-profile-cover             | v1.3.0       |        |
        | ianm-html-head                  | 1.0.0        |        |
        +---------------------------------+--------------+--------+

        I suspected that this error was related to the Tags extension not being enabled, but enabling it and clearing cache & migrating DB didn't fix the issue.

        No server-side logs. That's all that I know.

        FriendsOfFlarum

        How can I install this on Free Flarum?

        It Just Says: Oops! Something went wrong. Please reload the page and try again

        When I try to put on FOF Best Answer It says this: Oops! Something went wrong. Please reload the page and try again

          Winky changed the title to FreeFlarum - Best Answer Issue (HELP) .
          Merged 2 posts from FreeFlarum - Best Answer Issue (HELP).
          Migrating extension: fof-best-answer
          Migrated: 2021_08_09_add_qna_column_to_tags_table
          Migrated: 2021_08_10_add_reminders_column_to_tags_table
          PHP Warning:  explode() expects parameter 2 to be string, array given in /www/wwwroot/unswforum.com/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php on line 25
          
          Warning: explode() expects parameter 2 to be string, array given in /www/wwwroot/unswforum.com/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php on line 25
          PHP Warning:  Invalid argument supplied for foreach() in /www/wwwroot/unswforum.com/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php on line 25
          
          Warning: Invalid argument supplied for foreach() in /www/wwwroot/unswforum.com/vendor/fof/best-answer/migrations/2021_08_15_migrate_reminder_settings.php on line 25
          Migrated: 2021_08_15_migrate_reminder_settings

          1.1.2, same problem here...It doesn't work after updating. I have to disable the extension.


          Update:

          1.1.3 still can't select the best answer(no button in posts). I find nothing in the console.

          1.0.1 works well.

          9 days later

          The way new update is working, its unique! The settings via tags but with this new update it has added another form, on search. My search was move to homepage so for people using @media below screens, it's congested. How can we remove form All question , thanks!

          @stimw

          Ralkage 360nemz if you installed the latest version, you'll have to go into the Tags admin page and pick which tags you want to designate as a question and answer tag. There should be two options in the edit and create tags modals.

          1.1.4

          Well, this started on 1.1.0 but has not been announced so far, so lumping it all together here 😉

          • Add filtering by solved, unsolved or all
          • Ability to enable/disable specific tags for Best Answers
          • Ability to enable/disable BA reminders for specific tags
          • Start a discussion button now shows Ask a question when within a BA enabled tag. (can be adjusted using FoF Linguist

          image
          image

          ⚠️ Important

          When updating from previous versions, you must either enable all tags for best answer or individually from the tag configuration modal (2nd screenshot as an example)

          Updating
          composer require fof/best-answer:"*"
          php flarum cache:clear
          php flarum migrate

            Start a discussion button now shows Ask a question when within a BA enabled tag. (can be adjusted using FoF Linguist

            this is really a cool feature to have! may i ask you a quick question

            when it is enabled for all tags the button is changing to "ask a question" but it is not changing at home, following, tags pages. so this need to be changed using the linguist right?

              Hari so this need to be changed using the linguist right?

              correct, yes.

              IanM Add filtering by solved, unsolved or all

              Can we hide the filtering? It is kind of weird when we don't set a special Q&A tag but just set all the tags.

              And it looks bad on the mobile phone with other extensions like Discussion Language