XF 1.5 Thread Tagging

Tags are a common method of adding keywords to content to aid searching and discovery. In XenForo 1.5, we're adding support for applying tags to threads, as well as a framework for add-ons to add tags to their own content types.

upload_2015-6-25_12-53-21.webp


Thread tags apply to the thread itself (rather than individual posts), so they are displayed at the top of the thread view, independent of any post.

Clicking any tag will take you to a page displaying all content that has that tag attached to it:

upload_2015-6-25_12-54-22.webp


These results pages will be accessible to search engines (and of course end users) to help them relate the tagged content to each other.

To edit the tags in an existing thread, clicking the "edit" link shown in the first screenshot will bring up an overlay with a tag editor:

upload_2015-6-25_12-55-15.webp


When typing a tag in, auto-complete options will be displayed.

Tagging Options
If you are allowing untrusted users to apply tags, it may be useful to apply some limits. To do this, there are a number of options:

upload_2015-6-25_12-55-50.webp


These options cover limits over the amount of tagging an individual user can do and the actual structure of the tags. Note that tags will have some normalization applied (lower casing, white space adjustments, etc) independent of any structure limits.

Tagging Permissions
There are also a number of permissions that allow you to control who can tag content:
  • Create new content tag (global) - this controls whether a user can create an entirely new tag. If they do not have this permission (but have permission to apply tags), the user will only be able to use a tag that has already been created.
  • Bypass user content tag limit (global) - having this permission allows the user to bypass the "Max Content Tags Per User" option.
  • Tag thread by self (global and per forum) - this permission allows a user to apply tags to threads they create. By default, they will only be able to edit the tags they applied to the thread.
  • Tag thread by anyone (global and per forum) - this permission allows a user to apply tags to threads created by anyone. Like above, they will generally only be able to edit the tags they applied.
  • Manage tags by others in own thread (global and per forum) - this permission extends the tag management to control any tag that has been applied to their own thread, regardless of who applied it.
  • Manage tags by anyone (global and per forum) - this is a moderator-level permission that allows full tag management.
Admin Tag Management
Admins can manage tags through the admin control panel. They are given a list of tags, including filtering and sorting options:

upload_2015-6-25_12-57-55.webp


Editing a tag gives the following options:

upload_2015-6-25_12-58-13.webp


Normally, when a tag is created, the "URL version" is automatically generated. This is what will be displayed in the URL when viewing the tag results page (example.com/community/tags/tag-name-here/). Normally, this is automatically generated from the user entered tag by deaccenting and normalizing, along with some extra processes to ensure uniqueness. However, an admin can manually override this if desired.

Normally tags will be removed when they are no longer used (specifically, when their last usage is removed). Choosing to make a tag permanent prevents this. This is mostly significant for communities where admins will create a list of valid tags and not allow users to add their own.

Deleting a tag should be straightforward enough. Merging tags allows you to change all references to tag X into tag Y.

Tag Searches
Tag searching is exposed via a new tab on the search pages:

upload_2015-6-25_12-59-19.webp


This allows searching by a single tag or multiple tags. Entering multiple tags will only return content with all tags applied.

Below this, we display a tag cloud showing the most popular tags with various "weights" to indicate how popular they are. There are some options that control what is included in the tag cloud:

upload_2015-6-25_12-59-49.webp


In terms of searching itself, tags are included as part of the content's title, allowing the text of the tag to be searched. With XenForo Enhanced Search, this automatically increases the relevancy of a result matching a tag. Tags are also indexed as "metadata" internally which means they can be searched via a non-keyword method. This is not exposed by default outside of the dedicated tag search page.

Tagging for Developers
Like many other systems in XenForo, the tagging framework is implemented in a content-agnostic way. This allows tagging to be added to many content types easily. Developers wishing to add tagging to their content mostly just need to implement the necessary handler class and display the tags on their content pages.

We intend on releasing updates to our official add-ons to add support for tagging.



That's all for today. Until next time...
 
You could possibly do it with a query/script.
It may require manually editing one in the ACP to rebuild caches - I haven't looked at the code to see how it works.
 
I have that one installed, but I don't think it's possible to do that with that add-on unless you add those tags to a thread.
Ah, sorry, I misunderstood your question, I think the syntax threw me on first reading. I thought you were asking how to batch create tags for existing threads, but apparently you want to allow users to use only certain tags of your choosing. Good luck!
 
@Mike
Another thing I noticed is that "Disallowed words in tags" works totally different from "Words to Censor"

With words to censor you can use "Xen" and Xenforo will still be allowed. With tags that doesn't seems to work.
Maybe it's a good idea to give these the same functions if possible?
Is there a reason it's done this way? The way Words to Censor works seems to be the better way.

Disallowed words in tags
The words or phrases in this field will not be allowed in any part of tags. Put each word or phrase on its own line. Entering 'tar' will disallow 'star' and 'tarnish' etc.

Words to Censor
This is a list of words or phrases that are to be censored. If a replacement word or phrase is entered, the censored text will be rewritten to this (for example, replacing "dog" with "cat"). If no replacement is entered, the censored text will be replaced with censor characters (for example, "***").

If you wish to match a wildcard at the beginning or end of the matched word, add a "*" in the correct position. For example, "dog" will not censor "dogs" but "dog*" will.
 
Is it possible to search by more than one tag. For example I would like to find all the threads that have both the tags "Paris" and "vacation" but exclude the ones that only have just one of those.
 
Top Bottom