Vanilla 1 is no longer supported or maintained. If you need a copy, you can get it here.
HackerOne users: Testing against this community violates our program's Terms of Service and will result in your bounty being denied.

Extension: Discussion Tags

After playing with tags on various parts of we recently added tagging to the Discussions section. At first it was highly interdependent on some other extensions we're using but we recently were able to strip it down as a stand alone version so it chould be shared here with other users.

This extension allows:
- Adding free form tags when starting a new discussion.
- Adding/editing tags of existing discussions (edit the first comment in a thread).
- Quick adding/editing of tags for one's own discussions from the all-discussions view.
- Administrative adding/editing of tags from the all discussions view (enable this in the Roles & Permissions setting).
- Viewing of recently popular tags and all tags via tag clouds.

You can see how it works over at

Many thanks to Andres Hutstein, who did the coding.


  • I will very much be playing with this later. :D

    I'll be interested in seeing if you use the category system or another tag table.
  • It creates 2 new tables and operate independent of categories.
  • That's a bit of sadness, to be honest. Is there any reason you decided to do that, or was that just how it went?
  • It's simply we needed to manage our site. Categories are used for general types of discussions (questions, private discussions for certain roles, etc.) while Tags serve to organize content more specifically by topic.

    There's certainly plenty of discussion here on the forum about the value of tags, so I'm sure everyone will have an opinion. :-) That's the great thing about Vanilla--multiple approaches can exist and people can build/use the approach that suits them.
  • When I click "Enter some" it just runs and runs and runs, nothing happens. Is there some special permission settings that need to go down?
  • Also, does anyone have this working with the FriendlyURL extension?
  • great christmas gift. :)
  • not tried it out, but it looks like a great idea. Thanks houseinprogress and hutstein.
  • I'm getting an error on front page when i'm not logged in:
    Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in /home/websites/ on line 211

    No database selected
  • Thats awesome! Now we just need the ability to turn off categories.
  • @zertox - There's a new version on the add-on directory that should fix that issue.
  • @houseinprogress: I'm still getting the same error... I downloaded your version 1.0.1.
  • This is a fantastic addition to Vanilla! Great work! Tags are a fantastic way for a conversation to exist outside of the rigid format of categories. To some users categories are a natural way to explore a conversation, but others tags are much more intuitive. The one feature i'd love to see is the ability to tag comments individually. This would allow the progress and movement of a conversation to be accurately tracked. Often a topic begins in a certain category, and the comments as well, but as the conversation progresses over time the topic or tags appropriate to it change. If a user could simply add tags to their individual contribution of the conversation it would allow it to be fluid and dynamic without being unnecessarily constrained by the initiating categories or tags. Again thank you for the great addition to Vanilla!
  • @zertox - I think I have a fix for that but I can't upload it right now. I'll get to it soon, just wanted to confirm I wasn't ingoring you...

    @stefanish - Interesting idea, but my first wonder is how often that would help as clarification and how often that could just create a lot more tags and items to sort through. Is 'search' a realistic way to get to that level of granular content?
  • I guess i'm coming at this after an ongoing conversation i've been having with a friend of mine about why forums do or don't work, and if they can be improved. and here The basic gist is that the "categorization" of a conversation kind-of straight-jackets it, and won't allow it to be flexible or dynamic in the way real-life conversations can be. In face-to-face conversation we can start out talking about the weather, and end up talking about AJAX, and somehow it works. I have found that many users feel constrained by the categories, and I think adding more isn't really the answer -- eventually you end up with 120 categories which are all very narrow and specific or they overlap making them really useless. I find that conversations or forums for that matter rarely consist of one topic - I run a forum on Vanilla at my work, and I notice the following happen; Someone posts an idea to the "Bright Ideas" section, but it relates to "Flash" because it's a Flash piece, and it also has something to do with one of our clients, so it really should be in our "Client'" related category. The proposed solution is that the categories should be eliminated or simplified to one category of posts, because each comment could be tagged it would end up as discrete and yet relevant to both the specific conversation, and topics which are also tagged with the same tags. Imagine the tags then allowing not only a conversation to belong to multiple "categories or topics" but each comment. Users could start a post simply by either clicking through a tag-cloud to locate a conversation which is already happening and add their comment, or they could just start a new discussion, the single category distinction being obsolete because the tags would serve as a multi-dimensional category per discussion, per comment. The discussion could open up and be more dynamic, as the topic evolved, and still allow a reader at a later date to jump in at the part that interested them -- AJAx as opposed to the weather.
  • If comments were tagged, there should be a way to choose tag clouds based on topics only or topics + comments. I believe my users would be disoriented by being thrust into the middle of topics based on a comment tag that might-or-might not relate to the topic.

    Not to mention that most users will find tagging of comments to be overkill for a quick reply and/or would be more likely to tag badly than the author of a topic. Tagging is cool but it is not the magic bullet of taxonomy.

    I appreciate the value of topic drift and of minimal (or no categories) but differ about the utility of smooshing topics and comments into a tagging system.
  • hello houseinprogress,

    I love your extension but I'm getting an error on front page when i'm not logged in... could you please post the patch here if you can't upload the estension modified?

  • @zertox and emilime - I've uploaded 0.3.1, which should address that error when a user isn't logged in. Let me know.
  • Hey there, thanks for this great extension :D It's pretty intuitive and really changes the way to order discussions. It makes me want to get rid of most of my categories! However, I have a few questions and encountered a few problems. - Would it be possible to have a better translation support? It was actually long and not so easy to dig through most of the code, in three different files, in order to translate everything in my own language. Now I'm done I'm happy with it, but I fear I'll need to spend a lot of time on it again when you'll release a new version. - Is there an easy way to change the color of the tags when hovering them in the tag cloud? It's pretty hard to read when a tag includes more than one word. I managed to change the hover color in the panel, but for now I didn't figure out how to override it in the complete tag list (and I'd really like to...) - It would be great to have more control over the block of tags showing up in the discussion list. Since I was using the Category Icon extension, I had a hard time figuring out how to move it to get along with my style. It leaves an extra space because of the <br /> (at least in Firefox and Internet Explorer). Could it be made independantly of thePostDiscussionOptionsRender stuff? I mean, not on the same line? - A feature to erase the unused tags from the database would also be great. At the moment, if you make a typo, or if you delete all occurrences of a tag, it keeps showing up in the ajax menu. - I get this error in the ajax menu when I edit a tag and remove a comma: Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result ressource in ../extensions/DiscussionTags/gettags.php on line 31 Sorry for being a pain in the ass with all my requests, I just hope it will help a bit. Keep up the great work!
  • yeah the new version fixed the mysql error. Thanks
This discussion has been closed.