Why xili-tidy-tags plugin ? [updated]

Why xili-tidy-tags plugin ? why a plugin ?

This plugin offer to xili-language plugin a smart way to create sub-set of tags according language of the displayed post (or category). The tag cloud content is depending of the front current language in the multilingual website.

Checking tags with language groups

Checking tags with language groups

BUT, as delivered as a plugin, it is also useful for current themes where the author want to ‘organize’ tags in groups ans sub-groups depending semantic or technical parts of his site. With the new template tag (as here in the sidebar), the cloud shows differents terms and tags.

Grouping tags (here semantic groups)

Grouping tags (here semantic groups)

xili-tidy-tags plugin soon available on WordPress Plugin Directory (repository).

Before to post a more detailled publication, please find below the .zip of the beta version and the read.me text contained in this.

Download beta release at WP plugin directory : xili-tidy-tags 0.8.2

The readme.txt :

=== xili-tidy-tags ===
Contributors: MS xiligroup
Donate link: https://dev.xiligroup.com/
Tags: tag,tags,theme,post,plugin,posts, page, category, admin,multilingual,taxonomy,dictionary
Requires at least: 2.7.0
Tested up to: 2.7.1
Stable tag: 0.8.2

xili-tidy-tags is a tool for grouping tags by language or semantic group.

== Description ==

xili-tidy-tags is a tool for grouping tags by language with xili-language plugin for multilingual site. By instance to present only tags in english when the theme is in english because the post or the current category present texts in english. But this tags aggregator can also, by instance, be used to group tags according two or more main parts of the CMS website.
Technically, as xili-language, this plugin don’t create tables in wordpress db. He only use (rich) taxonomy features. So, with or without the plugin, the base structure is not modified. **Template tags** are provided to enrich the theme and display sub-selection of tags.
Through the settings admin UI, it is possible to assign to a tag one or more groups (by instance a french tag to the french language group. You can choose different storage policies.

THIS VERSION 0.8.1 IS A BETA VERSION (running on our sites) – WE NEED FEEDBACK – coded as OOP and new admin UI WP 2.7 features (meta_box, js, screen options,…)

== Installation ==

1. Upload the folder containing `xili-tidy-tags.php` and others files to the `/wp-content/plugins/` directory,
2. If xili-language plugin is activated, groups of languages are automatically created. If not, you can also use xili-tidy-tags to group your tags in semantic group like technical, trademark…
3. in theme, a new template tag is available : `xili_tidy_tag_cloud` Same passed values as tag_cloud but two new : tagsgroup and tagsallgroup . tagsallgroup can be the parent group slug, tagsgroup is one of the child group slug. If one or both are included, the cloud is built with sub-selected tags in this (theses) group(s).

**Exemples of script in sidebar.php :**

= with xili-language plugin activated in multilingual website =

<h2><?php _e('Tags cloud','xilidev');?></h2>
<?php if (function_exists('xili_tidy_tag_cloud')) xili_tidy_tag_cloud('tagsgroup='.the_curlang().'&tagsallgroup=tidy-languages-group&largest=18'); ?>

= with semantic group named as category and a group containing trademarks named trademark =

<h2><?php _e('Tags cloud','xilidev');?></h2>
if (function_exists('xili_tidy_tag_cloud')) xili_tidy_tag_cloud('tagsgroup='.single_cat_title('',false).'&tagsallgroup=trademark&largest=18'); ?>

== Frequently Asked Questions ==

= Where can I see websites using this plugin ? =

dev.xiligroup.com [here](https://dev.xiligroup.com/ « a multi-language site »)


www.xiliphone.mobi [here](http://www.xiliphone.mobi « a theme for mobile ») also usable with mobile as iPhone.

= Next steps ? =

A widget for `xili_tidy_tags_cloud` template tag function.

More admin UI tools for bulk actions with tags groups….

== Screenshots ==

1. the admin settings UI : tidy tags groups
2. the admin settings UI : table and checkboxes to set group of tags.
3. the admin settings UI : table and checkboxes to set group of tags : sub-selection of groups.

== More infos ==

This first beta releases are for multilingual or cms website’s creator or designer.

The plugin post is frequently documented [dev.xiligroup.com](https://dev.xiligroup.com/)
and updated [Wordpress repository](http://wordpress.org/extend/plugins/xili-tidy-tags/).

See also the [Wordpress plugins forum](http://wordpress.org/tags/xili-tidy-tags/).

= 0.8.1 = some fixes – improved query – better tag_cloud()
= 0.8.0 = first public beta release.

© 090331 – MS – dev.xiligroup.com

Technically speaking

Since WordPress 2.3, the core include taxonomy library to manage categories, tags and links.
At root, there is a catalog of terms used to naming the taxonomies. A term can be used in different taxonomies.

the 3 taxonomies are ‘category’, ‘post_tag’, and ‘link_category’. The first is hierarchical, two are set to qualify posts, one to qualify links.

In xili-language plugin, one taxonomy in introduced : ‘language’ to qualify posts according his language. With 0.9.8, a taxonomy is added to group and sort languages.
This taxonomy is to ‘qualify’ terms by grouping them (and sorting them).

xili-tidy-tags plugin also uses taxonomies to qualify terms (via relationships) for creating groups of tags of the ‘post_tag’ taxonomy. With this way, it is now possible to create hierarchical groups of tags and display sub-set of tags cloud. Two examples :

1) On a multilingual site as here : if the post (or category) in front is in french, the tags cloud only show tags in french and internationals tags (by instance technical words or trademarks).

2) On a CMS site with important main parts, the designer can choose to display tags cloud differently in the philosophy part and in the computer software part.

xili-tidy-tags plugin provides in admin UI two ways to check a tag to one or more groups.
a) when creating or modifying a tag
b) with the dashboard page tidy groups assign (in a one shot table)

A template tag (soon a widget) can be added in the sidebar (or replace the default one). In the passed values, it is included the name of group of tags that must be displayed (after the sub selection by the plugin).

Soon more infos…
M 090402 after 20:00 GMT

Ce contenu a été publié dans News, xili-language, xili-tidy-tags, avec comme mot(s)-clé(s) , , , , . Vous pouvez le mettre en favoris avec ce permalien.

24 réponses à Why xili-tidy-tags plugin ? [updated]

  1. baron dit :

    Works great, thank you

  2. mache dit :

    thanks for your plugin, i’ve been searching for days for something like this, to group and organize tags
    now i’m working on trying to get it installed but i keep on getting this error message:
    Fatal error: Call to undefined function add_object_page() in /home7/layabozi/public_html/wp-content/plugins/xili-tidy-tags/xili-tidy-tags.php on line 177

    I removed many pf the plugins i was using and it is still not working. the error is always the same, and i do not know coding so much to understand how to fix it. could you please help me?

  3. admin dit :

    Hello thanks for your observation,

    add_object_page() is a function only in WP 2.7 as WP lower version indicated in readme page… (Requires at least: 2.7.0)

    but, if you cannot upgrade to wp 2.7.1, try, without garanties, to change at this line 177 $this->thehook = add_object_page… with add_menu_page…

    Keep me informed…

  4. mache dit :

    Hi MIchel
    thank you very much for your answer.
    I am using worpdress 2.7.1 actually.
    I really don’t know how this work, but could be that is crossing with other plugin? in case I’ll list you below my plugins.

    Ok. So I changed the code as you explained me, and now the plugin can be installed and it doesn’t appear any error code.
    But when i click on settings, or go directly clicking on the tab of tidy tags then there is the error message:
    Fatal error: Call to undefined function screen_icon() in /home7/layabozi/public_html/wp-content/plugins/xili-tidy-tags/xili-tidy-tags.php on line 434.

    Then if i click on the other option: Tidy Tags assign, the error is:
    Fatal error: Call to undefined function screen_icon() in /home7/layabozi/public_html/wp-content/plugins/xili-tidy-tags/xili-tidy-tags.php on line 697

    Again thanks for your time and help.

    These are the plugins I have active on my web:
    All in One SEO Pack
    Audio Player
    Lightbox 2
    NextGEN Gallery
    NextGEN Gallery Widget
    Simple Tags
    Viper’s Video Quicktags
    Wordpress.com Stats
    Wordpress Google Calendar
    Yet Another Related Posts Plugin

  5. admin dit :

    Thanks for your accurate description,

    If you really use WP 2.7.1, there is a problem 1 or 2
    1 – in your installation
    2 – in a plugin which interfere with the default installation of WP 2.7.1

    Why ?

    because the function add_object_page() is in the file – wp-admin/includes/plugin.php – (line 562)

    and screen_icon() in the file – wp-admin/includes/template.php (line 3436) – of the wp kit (it displays icon in the admin menu or at top of each screen)

    both used by xili-tidy-tags

    If without plugins (only tidy) – the pb remain it is a pb of wp2.7.1 install and if not, one of the plug-in interfere – I use w/o pb Akismet, Lightbox 2, Simple Tags,..

    keep me informed,


  6. mache dit :

    Hi Michel
    (*intense-blushing*) you are right. i didn’t have wp 2.7.1 … sorry, my mistake, all the time i was reading the number at the bottom and actually it was a sign to uptade to wp 2.7.1
    the good news, now i’ve updated to 2.7.1… it is working!!! 🙂

    now, i do have other question… it is about the tag cloud.
    i’m trying to find the way to publish one group of tags using the code you gave on the instructions:

    (you may want to fix the beginning and add the for those more dummy than me 🙂 )

    I’m playing with it, trying different options to where should be added or changed to the name of the group of tag. but still i don’t get it.
    Using as example the default group of tags:
    Name: tidy group
    Description: default xili tidy tags group
    Group-slug: tidy-group
    Group Taxo ID: 370
    Where exactly should I change the code below?
    and with what data?

    I tried replacing on the HERE? places with the Name, the Group-Slug, the ID and the Group Taxo ID. I also tried taking off the …tagsallgroup=HERE?… thinking i don’t have a subgroup. but it’s very possible that is me not understanding again.

    I’m kinf of excited because seems i’m getting closer to make it, uh? 🙂

    ps: thanks for the A+ on my web… I’ve got some gray hairs trying to make it a decent design, still is not perfect though. but it works. 🙂

    again thanks a lot Michel for your kind assistance and your patience.

  7. admin dit :

    Thanks for your notes… After our ‘overseas’ exchanges …. The plugin is now updated in 0.8.2 and fixes a query big error with db name… Hope to deliver in less than one day a version incorporating also widget for xili_tidy_tag_cloud.

  8. Tina dit :

    Is there a way to place multiple widgets on a site?

    Right now your plugin shows up as a widget, but I am only allowed to put one on my site (which kind of defeats the purpose of separating my tags into groups).

    Is there some code I can put into the plugin to make multiple widgets?

    Thanks so much… your plugin is exactly what I have been looking for!



  9. admin dit :

    In this today release, as current tag_cloud widget, xili_tidy_tag_cloud widget is unique… But if you are easy with php/html, you can add everywhere in your theme the function(s) as described in the readme.txt (visible in the wp plugin directory)… In this dev.xiligroup site, it is done as described.

  10. kaigou dit :

    Hey. This is exactly what I’ve been looking for, but if I can’t figure out the conflict then I’m going to be very very sad (it’s been a long search for something that manages tags the way this plugin does). Basically, when I activate the plugin, set it up, and go about my business, in the course of updating/editing posts (I’m in the middle of a conversion from static to WP), sometimes a random post will simply give me a blank page when I go to edit it. Nothing. It was there yesterday, and I can see it on the GUI end, but in the Edit Post, it’s gone.

    The only change in WP has been the inclusion of the xii plugin. I deactivate the plugin, go back to that post, and it appears as it should, with body, excerpt, author info, etc. I reactivate the plugin, go back to that post… and it’s gone again. (Worst of all, if I click « update » at that point, while the screen’s otherwise empty, WP overwrites the original post with… nothing. Gyah!)

    So something is definitely conflicting between the plugin and the posts, but something outside the base core (or it’d be doing it to every post, I imagine, and it’s not). Is there something I should look for in those particular disappearing posts for some clue as to what might conflict with the xii plugin? Have you heard about this kind of conflict before, and if so, what should I be doing to fix it?

    I really hope there’s a way to resolve it, because this plugin fits what I need exactly. It couldn’t do a better job of being tailored than if I’d even written it myself with my requirements in mind. Just need to halt with the disappearing posts, and life would be grand!

    Thanks in advance!

  11. kaigou dit :

    …Continuing to search, and looking through the db for the raw data. It appears the particular culprit (this time) was a post that (for some unknown reason) had comments closed. I went into the db and manually changed that to « open », and voila, the post returns. I’m not sure what that might tell you, because for a page with comments closed, there’s no such issue.

    Next, I went into the db and picked another post, and manually changed its comment setting to closed. I opened the post inside WP, and had no problem. I closed, reopened, and it was still there; I even turned on comments inside the post, saved, reopened, and every appeared as it should. Hmm.

    Then I tried to duplicate, by deactivating the plugin, putting it back, and then opening a post. Still fine. I tried doing the same but this time, choosing to edit via the ‘edit’ link on the user-end post. Still fine.

    So… I have no idea what that means, except that it APPEARS to be okay now — but somehow that first post got switched to « closed » on comments, and that in turn made it disappear. How the tag plugin might have affected that, I don’t know, only that nothing was disappearing until after the plugin came along — but, and fingers crossed here, maybe it’s resolved.

    At least it’s FYI if anyone else runs into something similar, but unfortunately I can’t seem to reproduce it. Maybe a database blip?

    Thanks again for the plugin, and if it’s really working now, then all my last headaches are gone! Thank you!

  12. admin dit :

    Thanks for your long story which confirm perhaps syllogism because the two events seem independant. xili-tidy-tags plugin only works with terms tables and don’t hack any action or filter with posts managements. It is an « overlay » to group tags with a specific taxonomy (for creating specific sub-cloud of tags) so when the plugin is desactivated, nothing must be changed.
    This also confirm that the db must be maintained and repaired time to time.

    Don’t hesitate to keep me informed and why not give your link when plugin will be fully implemented !

  13. Ping : 推荐10个实用的WordPress插件 | 鹏博客

  14. Ping : 10 Best WordPress Plugins – March 2009 | Best Wordpress | rooteto.com - Ertuğrul SAĞLAM

  15. Selec dit :

    I am utilizing this plugin real well, but I have a question about the php and DB:

    1. Where is this group information stored? It say rich taxonomy, but the groups have an ID number, so I was wondering where is the information kept. If it is in the db, what table? Is it in term-relationships?

    2. How can I fetch just a list or array of specific group? For example, I have a list of different musicians ( Hendrix, Gainsbourg, Royksopp, Jones ) and I want to fetch them and have them in a drop-down on my site.

    It won’t be in the widget area, and I don’t want a cloud. What is the php? is it:

    if (function_exists(‘xili_tidy_tag_’)) xili_tidy_tag(‘tagsgroup=’Musician’)

  16. Selec dit :

    Also I just want to say this is an amazing plugin. Thank you!

  17. xiligroup dev dit :

    1) As you can see in php code of wordpress (taxonomy.php) and of xili-tidy-tags plugin, the grouping system of tags uses the same system as wp core and the 3 tables (terms, term_relationships and term_taxonomy). With this plugin, I have introduce the feature of grouping tags around a group named by a term. So it was not necessary to create annoying new tables.
    2) As explained in doc and examples, it is very easy to select sub-groups oft tags with php line – see lines 50 and more of readme.txt or here http://wordpress.org/extend/plugins/xili-tidy-tags/installation/. If you read current tag_cloud() WP codex and use good attributes, it was also possible to return not a formatted cloud but a simple array usable in your own source because xili_tidy_tag_cloud() uses the same parameters but add his own…
    Hope that can help you !
    Michel of dev.xiligroup

  18. Zarban dit :

    Hello! This plugin is just what I need! However, when I replace wp_tag_cloud with xili_tidy_tag_cloud with a « number » value of 5, the new cloud displays the first 5 tags instead of the 5 tags with the most posts.

    It displays:
    – alfred (1 post)
    – brian (3)
    – bryan (5)
    – chris (11)
    – christopher (6)

    Instead of:
    – chris (11)
    – christopher (6)
    – george (18)
    – john (10)
    – steven (25)

  19. Zarban dit :

    I forgot to mention: my WordPress installation is version 2.8.6. The call I’m using is:


  20. xiligroup dev dit :

    Hello, Zarban – Thanks for your accurate observation. Indeed, when activated the selection in a sub-group is not done on the quantities but on an alphabetical way.
    The origin is – by default the sort is done by name if sub-group is selected. To go around the only thing to do is add these parameters :

    orderby=count & order=desc & number=5

    Fix is done in version 1.2

  21. Zarban dit :

    Awesome! Thanks!

  22. Zarban dit :

    Say, I also noticed that if I change the tag name or slug using Quick Edit on the Tags page, I lose the group that the tag is in.

    Also, the Posts links on the Assign page are linked to the tag name instead of the slug, so if the name is different from the slug, the link doesn’t work.

    These are just minor things that you might try to fix later.

  23. xiligroup dev dit :

    PLEASE don’t use Quick Edit, because now the Tag’s group fields are not inside the « ajax » quick temporary window…. I hope to find (if exist) a hook/filter to add hidden fields as visible in normal Tags Edit at left of the Tags list… Be patient…

  24. xiligroup dev dit :

    the Quick-edit tag bug is fixed in latest version 1.2.1 !
    Enjoy xili-tidy-tags.


Laisser un commentaire