Set up structured tagging with tag groups and category tag restrictions

Discourse
Fri, 05 Aug 2016 15:25:43 +0000
Site Management

Tag support is a core feature of Discourse. In this How-To I’ll go through setting up a tag schema like Car Talk uses.

We’ll want to achieve these things:

Tags for car makes and car models.

Only allow the car make and model tags to be used in certain categories.

Car model tags can only be chosen if the matching car make tag is used.

Prerequisites

Tagging is enabled by default in Discourse (via the tagging_enabled site setting). If it was previously disabled, ensure it is turned on.

In a schema where we’re strict about how tags are used, we should prevent most people from creating new tags. The create_tag_allowed_groups setting controls which groups can create new tags (defaults to admins, moderators, and trust level 3). You can also control who can apply tags to topics with the tag_topic_allowed_groups setting.

Tag Groups

Go to the tag groups page (/tag_groups).

Top-level tags

First let’s create the car make tags, which we want people to enter first.

On the tag group page:

1. Create a new group.

2. Give it a title.

3. Add the tags that should belong in the group. You can add existing tags, or create new ones from this page.

4. We only want people to use one car make tag per topic, so check the box to add this limitation.

5. Save the group.

Parent-child tag relationships

Now we’ll define the car model tags, which are grouped according to the car makes. There will be one group for each car make.

Create another group as before with an appropriate name. This time we add a parent tag. In this example, we define the Honda car models group, and use honda as the parent tag.

The result

At this point, tagging a topic will obey these rules. When trying to add tags, the first tag can only be one of the car makes (or other tags that have no limitations on where they can be used).

The second tag can be one of the model tags matching the chosen Makes tag.

Visibility and usage restrictions

If needed, you can restrict the visibility or application permissions of tags to specific user groups:

Category restrictions

If I only want car discussions to happen in a certain category, I can restrict the use of all the car make and model tags from the category settings.

In the “Tags” tab of a category’s settings, you can:

Restrict tags to the category — add individual tags or tag groups that should only be available in this category.

Allow global tags — optionally allow other unrestricted tags alongside the restricted ones.

Require tag groups — require that new topics include a minimum number of tags from specific tag groups.

If I have other categories where these tags should also be permitted, they can be added in those categories’ settings in the same way.

And that’s it!

Additional Resources

Admin guide to tags in Discourse

Questions about creating, uploading, editing tags

Educating users about tags

Last edited by @sam Thursday, March 19, 2026 3:52 AM UTC
Check document (clicca per ulteriori dettagli)

1 messaggio - 1 partecipante