Joomla 3.1 Tags Preview

tagsJoomla 3.1 is just around the corner; and one of the most exciting proposed features for it is Tags.

The Tags feature is still currently under review. If Tags are included, it would likely be the "poster-child" for the Joomla 3.1 release.

One of the best features about the Tags component is that it allows other extensions to connect to its API and use the tags. Eextension developers can implement tagging into their component and interact with other tags easily. 

In the following screenshots, I'll take you through the Tags component, its menu items, and extensions, as well as highlight some of its coolest features along the way.

Tags are controlled via the Tags component

media_1362516978705_010330123ed1888c3a23f6261d699ed4.png

Easy to add new tags

media_1362519496348_b743434ca5fd92bb216cbdae2db145f4.png

Adding a new tag is quite easy and similar to adding a new article. Just go to Tags component, then click on New, and fill in the information within the tabs.

media_1362521195503_d9cc6b34cde5866ce388561569f4a6eb.png

Tags can be nested

media_1362521343860_0db52a041e63d19e1f81f8f8db196273.png

One of the great features about the Tags implementation is that tags can be nested. One Tag can have a single parent tag and multiple child tags. This allows you to organize tags better and also to display a large number of related tags easier.

media_1362521309383_6925e2c4e8b9ba15bc574f66bf300caf.png

Images can be associated with the tags

media_1362521392485_a5218fad3f010121dc4546ff80fd682a.png

Each tag can also be associated with an image (full image), as well as with a teaser image.

Each component can tag

media_1362523389777_fdfe66d0edb47846d5be70acbe33d1f4.png

As mentioned in the introduction, one of the best features about the Tags component is that it allows other extensions to use the tags. The core components will also have tagging enabled if the Tags feature gets added to the core. For example, the image above, I've create a Contact within Contact Manager called "Nick Savov", and I assigned the OSTraining Staff, Nick Savov, and Joomla Bug Squad tags to it.

For instructions on how to integrate Tags into your own extension, click here.

Display the tags via menu Items

media_1362522888576_a45d39383b70ebc7622ce32245fc5a86.png

There are currently four menu items from which you can choose:

  1. Tagged Items
  2. Compact list of tagged items
  3. Compact Tags View
  4. List of all tags
media_1362522931876_7f9441263d905109fad533cb5a1b15bc.png

Once you've selected a menu item type, you can select any tag from the Tag drop-down box. Each selected tag is then aggregated within the field and can be deselected by clicking the x next to it.

media_1362523557970_c42cdd1390cc41357808914822e6dbd8.png

Remember the Contact that I created? What if I only wanted to display it and any articles with the tags "OSTraining Staff, Nick Savov, and Joomla Bug Squad"? I could simply use a combination of the Tag field and the Type field. The Type field allows me to narrow down my selection and select only the components types that I would like to display, which also contain the above tags.

media_1362524064222_6cef7643adad26e8f8f34ea0ccbd4903.png

In the front-end, in the image above, the horizontal text would be my tags, while the list would be the items that contain at least one of those tags, which in this case happens to all be my contacts from Contact Manager.

Advanced menu item options

media_1362524572325_0284e7e44b1a3eb4f0f222231b81ca1f.png

What if you just want to display the tags that contain all the items above? Then you can use the Menu Items options and Match Type by All (see image above). There are also a number of other advanced options (see above).

Additional features

The Tags features has the main component and two extra extensions:

  1. A Similar Tags module
  2. A Smart Search plugin for Tags

How you can test Tags and help out

  1. Click here to download the test package
  2. Install it as you would Joomla
  3. Play around it and report any bugs at at Github.

Finally, a thank you to the primary developer, Elin Waring, along with help from other Joomla community developers and testers.