A propos du plugin twTags
By Geoffrey on Monday 8 August 2005, 04:40 - Coding - Permalink
Oui au fait, j'utilise donc le plugin twTags du monsieur de chez Tainted Words, et pour ceux que ça interresse, Je l'ai légèrement hacké. Alors j'ai commencé par modifier twTags::show() en lui ajoutant l'argument optionel $ifEmpty, qui contient la chaine de caractères à afficher dans le cas où il n'y a pas de tags à afficher.
# Affiche les tags relatifs au billet courant. function show($separator = ', ', $ifEmpty = 'Pas de tags pour ce post') { $tags = twPostMeta::field('tag', TWPM_F_ALL); if (!$tags || count($tags) == 0) { echo $ifEmpty; return; } uasort ($tags, array('twTags','_strcmp')); $str = ''; foreach ($tags as $tag) { $str .= $separator . '<a href="' . twTags::_url($tag) . '" rel="tag">' . htmlspecialchars($tag) . '</a>'; } echo substr($str, strlen($separator)); }
Et puis deuxième modification, mais là j'ai honte, j'ai ajouté une méthode twTags::NbTags qui retourne des chaines caractères du style aucun tag, un tag ou x tags, comme pour les commentaires quoi. Mais j'ai honte parceque je fais ça à l'arrache complète (oui je count(twPostMeta::field('tag')); pour ceux qui connaissent un peu l'API du plugin...). Quand j'aurai un peu de temps pour regarder comment sont stockés les tags, je pondrais surement une requête kivabien.
Comments
Une approche différente de la gestion de tags : https://admin.garambrogne.net/projets/technorati/wiki/WikiStart
Ce genre de mods, il ne faut pas hésiter à me les signaler d'une façon où d'une autre, hein, moi j'attends que ça :-) (trackback, commentaire, mail, toute la panoplie habituelle, quoi) Comme ça je peux l'intégrer dans le plug-in. Je mords pas et j'aime bien quand les utilisateurs s'impliquent ;-).
Surtout que, bien que tu aies honte, ce n'est pas forcément nul, comme modifications : si tu l'as fait c'est que quelque part ça t'était utile, et ça peut aussi être utile à quelqu'un d'autre :-)
L'idée du texte à afficher quand y'a pas de tags est excellente. Je n'y avais pas pensé. Les meilleures idées viennent souvent des utilisateurs (dixit The Cathedral and the Bazaar), et pour nbTags() je pense pas qu'il y ait une meilleure façon de faire, en fait (je dois encore retravailler l'API de twPostMeta, là c'est encore un peu sale dans les coins)
Yep, j'avais pensé à t'envoyer un ptit mail pour te signaler tout ça, et puis bon, tout le monde connait l'attaque hein, on se dit "plus tard", on oublie, et voilà.
Bon bref, si tu veux je t'envois ma méthode NbTags(), ça t'évitera de la recoder, mais je trouve ça vraiment trop gruik de count()er le tableau renvoyé par twPostMeta::field(), donc comme j'ai pas grand chose à faire ce week end, je pense que je t'enverrais direct un patch pour twPostMeta, ce sera plus propre :)
De toute façon je ne touche plus à twPostMeta avant septembre (obligations obligent). D'un autre côté j'ai peine à imaginer comment tu vas faire pour ne pas utiliser un count() à un endroit où à un autre ^^
http://fashion.hosmoz.net/blog/2005/08/14/393
un COUNT() ça compte aussi ? :)