It would be nice if the primary tags were all expanded by default (in the image above, only the 'Feedback' tag is expanded). Currently the only way to see the full list of tags available is to either visit the 'Tags' page, or manually clicking through each tag one-by-one to see the available sub-tags.

This makes it difficult to get an easy idea of the structure of the forum. e.g. "Was 'Themes' under 'Extensions', 'Resources', or 'Dev'?". We have to try and remember each sub-tag ourselves. It also means one extra click to get to the tag I want. That may not sound like alot, but when your users are using the forum very frequently, it can get a bit tiring.

For new users (or even familiar ones) wanting to quickly find/create a post with a specific tag they vaguely remember the name of, it's rather time consuming to have to click through each tag until they've found the one they want. It would be really nice if all primary tags also listed their sub-tags.

A plus button would serve better in my opinion. Or, an option that they appear expanded by default in user profile or ACP. Looks neat as it is now.

    2 years later

    Anyone knows how to modify code to make secondary tags expanded by default?

      wmchen it's javascript based, so sadly no easy CSS hack for that. An extension would be needed to tweak the behavior.

        meetdilip I like the plus button idea next to the tags to expand them. But I also like how clean it looks now. Plus button should be hidden by default then show on hover maybe?

        clarkwinkelmann I tried to modify the extension.js in flarum/flarum-ext-tags, but it didn't work. I don't know which part I should modify. Could you give me suggestions?

        Thanks!

          wmchen in https://github.com/flarum/flarum-ext-tags/blob/v0.1.0-beta.8/js/forum/src/addTagList.js#L39

          Replace

          .filter(tag => tag.position() !== null && (!tag.isChild() || (currentTag && (tag.parent() === currentTag || tag.parent() === currentTag.parent()))))

          With

          .filter(tag => tag.position() !== null)

          This should make all child tags visible all the time. I did not test it though.

          This would only be a experimental fix though, as editing the extension.js or extension source in the vendor folder will be lost next time you run Composer.

          You'd need to hook into that code somehow from an extension. The problem is, given the way it was done I'm not sure that's possible. You'd have to use your own extend() call to cancel the one from the tags extension and run a custom one instead, which is not very pretty.

            clarkwinkelmann Thank you very much. It works as well. I knew it will be lost when running Composer next time. To make a package for me is difficult as far, so instead I just take a simple practice for flarum. Hope someday, I can contribute my own plugging extension for flarum community.

            thanks!

            @clarkwinkelman This would only be a experimental fix though, as editing the extension.js or extension source in the vendor folder will be lost next time you run Composer.

            It'd be possible to fork the Tags extension's last release (tagged as beta 8, Jul 21, 2017) and make the changes and redo it as a separate extension in packagist as well.

            If someone needs help finishing the forking process, feel free to hop into #extend on Discord or our Dev tag.