WordPress 2.3 : Schéma de la taxinomie !
Avant de commencer, je fais une petite précision sur le mot “taxinomie”.
La taxinomie désigne une méthode de classification des informations dans une architecture structurée de manière évolutive, autrement dit les catégories, les tags, etc. (Plus d’informations sur Wikipedia)
WordPress 2.3 introduit un nouveau schéma pour la taxinomie. Il remplace les tables “categories“, “post2cat” et “link2cat” par 3 nouvelles tables bien plus flexibles.
La première table est “terms“, elle ne comprend que les informations de base relatives à chaque terme.
term_id bigint(20) NOT NULL auto_increment, name varchar(55) NOT NULL default '', slug varchar(200) NOT NULL default '', term_group bigint(10) NOT NULL default 0, PRIMARY KEY (term_id), UNIQUE KEY slug (slug)
- “name” est le nom du terme
- “slug” est le nom optimisé pour l’URL
- “term_group” permet de grouper plusieurs termes ensemble
- “term_id” est un ID unique.
Un terme n’est ni une catégorie, ni un tag, cela dépend du contexte donné dans la table “term_taxonomy“.
term_taxonomy_id bigint(20) NOT NULL auto_increment, term_id bigint(20) NOT NULL default 0, taxonomy varchar(32) NOT NULL default '', description longtext NOT NULL, parent bigint(20) NOT NULL default 0, count bigint(20) NOT NULL default 0, PRIMARY KEY (term_taxonomy_id), UNIQUE KEY term_id_taxonomy (term_id,taxonomy)
La table “term_taxonomy” spécifie un terme dans une taxinomie. Il peut en faire une catégorie ou un tag (ou les 2).
- “term_id” est l’ID du terme dans la table de termes (expliqué ci-dessous)
- “taxonomy” désigne la taxinomie qu’on emploie. Les taxinomies par défaut sont “category”, “post_tag”, ou encore “link_category”.
- “term_taxonomy_id” est l’ID unique pour la paire terme/taxinomie.
Le reste des champs fournit des informations à propos du terme dans le contexte de taxinomie.
- “parent” permet une relation de hiérarchie entre plusieurs termes d’une taxinomie.
- “description” propose de spécifier une description pour un terme dans une taxinomie donnée.
- “count” permet de compter le nombre d’objets associé à une paire terme/taxinomie
Par exemple, pour la taxinomie “category”, le champ “count” permet de savoir le nombre d’articles que contient chaque catégorie.
La dernière table, “term_relationships“, met en relation les objets comme les liens ou les articles avec le champ “term_taxonomy_id” de la table “term_taxonomy“.
object_id bigint(20) NOT NULL default 0, term_taxonomy_id bigint(20) NOT NULL default 0, PRIMARY KEY (object_id,term_taxonomy_id), KEY term_taxonomy_id (term_taxonomy_id)
- “object_id” est l’ID d’un article ou d’un lien
- “term_taxonomy_id” est l’ID de la table “term_taxonomy” désignant une paire terme/taxinomie
La flexibilité de ce schéma et de l’API plugins permet d’ajouter de taxinomies et des objets très facilement. C’était l’un des points important du projet “Summer of Code“. Parallèlement, ce schéma nous autorise à récupérer facilement tous les objets associés à un terme donnés, sans préciser la taxinomie, récupérer tous les termes de toutes les taxinomies pour un objet donné, et aussi de convertir toutes les catégories en tags avec une requête.
Vous en apprendrez un peu plus sur le schéma de la taxinomie en consultant l’API des développeurs.
L’API des catégories assure une rétro compatibilité avec les versions précédentes. Les plugins effectuant des modifications directement sur les tables categories, link2cat ou post2cat seront buggés et non fonctionnels.
Voilà pour le schéma de taxinomie de la version 2.3. Il va causer quelques problèmes avec certains plugins dans un premier temps, mais à long terme il autorisera l’ajout de taxinomies sans modification du schéma de la base de données et c’est une excellente chose !
Source: Boren.nu
18 commentaires
28 août 2007
Amaury
Développement, WordPress
WordPress Francophone is back !
Plusieurs d’entre vous m’ont signalé des difficultés pour se connecter sur WordPress Francophone aujourd’hui…
Après analyse de la situation, j’ai pensé à un problème entre notre hébergeur et un FAI (comme le réseau Free), mais il n’en est rien. (Vu que ces personnes ont toutes des FAI différents…)
Et puis soudain, le déclic, j’ai regardé la date… Fin août, date de renouvellement du domaine !
Oublier de payer pour prolonger…
C’est maintenant chose faite ! et WP:Fr est de nouveau sur les rails !
À bientôt !
Calendrier à venir de WordPress 2.3 !
La sortie de WordPress 2.3 approche.
L’équipe de développement a jugé bon de publier le calendrier de publication de WordPress 2.3
| 23 août 2007 | Feature Freeze (fonctionnalités figées) |
| 27 août 2007 | Beta 1 |
| 29 août 2007 | Bug Hunt |
| 3 septembre 2007 | Beta 2 |
| 5 septembre 2007 | Bug Hunt |
| 10 septembre 2007 | Beta 3 |
| 12 septembre 2007 | Bug Hunt |
| 17 septembre 2007 | Hard Freeze (code figé au maximum) String Freeze (texte à traduire figé) Release Candidate 1 |
| 19 septembre 2007 | Bug Hunt |
| 24 septembre 2007 | Final |
Les “Bug Hunt” sont des évènements rassemblant un maximum de testeurs pour tenter de détecter d’éventuels bugs dans WordPress.
Si vous parlez anglais, et que vous avez une bonne expérience de WordPress, n’hésitez pas à y participer.
Pour rappel, les fonctionnalités ajoutées dans WordPress 2.3.
Pour l’avoir testé, je trouve la console d’administration beaucoup plus réactive que dans le passé, ce qui est une bonne chose !
Plugins Contest : Venez supporter les plugins des développeurs français !
Comme l’avait annoncé Benoît dans un précédent article.
Le contest concours de plugins est terminé !
Ce dernier s’est déroulé sur une période de 2 mois (juin/juillet). Il a eu plus de 30 plugins retenus pour la phase finale de la compétition.
Dont 2 plugins développés et maintenus par des Français:
- Post Album (alakhnor)
- Gestionnaire de médias par album. (photos, vidéos)
- Simple Tagging Plugin (AmO)
- Gestionnaire de tags pour WordPress, performant, fiable et puissant.
Si vous utilisez nos plugins et que vous appréciez notre travail pour la communauté, allez voter pour eux ! (avec une bonne note)
Et comme nous sommes fairplay, voici le lien avec l’ensemble des plugins en compétition, l’occasion de découvrir d’éventuels nouveaux plugins.
Vous trouverez sur la même page les prix pour les gagnants, il y a des sommes d’argent cash, des hébergements, un lecteur MP3, un logiciel de traduction, un livre, bref.
Des choses sympathiques !
Sortie de WordPress 2.2.2 et 2.0.11 !
Pas de repos pour l’équipe de développement de WordPress. En ce très beau dimanche de mois d’août, Matt et son équipe ont publié 2 nouvelles versions !
Pourquoi 2 versions différentes ?
Très simplement, car l’une concerne la dernière branche de WP (2.2.x), tandis que l’autre concerne la branche (2.0.x).
Pour rappel, la branche 2.0.x disposera d’un suivi jusque 2010. (Plus d’infos sur cet article)
Quoi de neuf ?
Rien.
Ces mises à jour ne corrigent que des bugs mineurs et des potentielles failles de sécurités.
Téléchargement ?
Sur la page de téléchargements de WordPress Francophone ! Comme d’habitude…
Comment mettre à jour ?
Comme d’habitude…
- Sauvegarder votre base de données et vos fichiers FTP.
- Désactiver tous les plugins
- Télécharger la dernière version
- Envoyer sur le FTP les nouveaux fichiers. (en écrasant les anciens)(attention si vous avez modifié le thème par défaut.)
- Réactiver vos plugins
- C’est fini !
Bon blogging !










