Comment travailler avec WordPress Term Meta comprendre les taxonomies

Dans une série récente, nous avons expliqué comment utiliser les métadonnées pour plusieurs des principales classes de WordPress.. 

Cela comprenait:

  • Publier des métadonnées
  • Métadonnées de l'utilisateur
  • Métadonnées de commentaires

Tout au long de la série, nous avons un peu expliqué comment WordPress 4.4 avait introduit l’idée des métadonnées de termes. Je ne voulais pas présenter le concept dans le contexte de cette série parce que cela dépendait de la compréhension de quelque chose qui donne souvent un peu de peine aux débutants.

C'est ce que ce série vise à aborder.

À propos de WordPress, des taxonomies et des conditions d'utilisation

Dans WordPress, les concepts de taxonomie et de termes vont de pair. Je vais élaborer plus à ce sujet dans un instant. Mais pour travailler correctement avec les métadonnées sur les termes, j'estime qu'il est important de comprendre les taxonomies, les termes et leurs relations. Sinon, comment pourrions-nous avoir une compréhension de bout en bout de ce que nous faisons lorsque nous travaillons avec eux au niveau programmatique?

Dans cette série de suivi en deux articles, nous allons examiner les taxonomies, leur nature, leur rôle dans WordPress et leur relation aux termes. Ensuite, nous allons nous concentrer sur les termes et sur la manière de travailler avec la nouvelle API de métadonnées de termes..

Si vous n'avez pas encore lu la série précédente, je vous recommande de le faire car cela jettera les bases de la manière dont fonctionne l'API que nous allons explorer. Si, toutefois, vous choisissez de ne pas le faire, ce n'est pas grave. Cette série devrait couvrir tout ce que vous devez savoir.

Que sont les taxonomies?

Tel que défini dans le Codex:

Dans WordPress, une "taxonomie" est un mécanisme de regroupement de certains messages (ou liens ou types de messages personnalisés)..

Certes, ce n'est pas un mot que vous entendez souvent et, parfois, d'autres vont s'embrouiller en parlant de taxonomie et de termes. Autrement dit, ils utiliseront un exemple de phrase comme exemple de taxonomie, mais dans ce cas, ils utiliseront un terme. Je vais en parler dans un peu.

En termes simples, considérez les taxonomies comme des moyens de regrouper des éléments. WordPress est livré avec deux taxonomies prêtes à l'emploi: catégories et Mots clés. Nous allons parler de chacun de ces derniers plus en détail momentanément.

Maintenant, il y a une mise en garde, du moins en ce qui concerne WordPress: les taxonomies peuvent être hiérarchiques ou non hiérarchiques. L’exemple le plus courant de l’idée ci-dessus est peut-être le suivant:

  • Lorsque vous créez une catégorie dans WordPress, vous avez la possibilité de la créer en tant que catégorie de niveau supérieur ou en tant que sous-catégorie d'une catégorie préexistante. Par exemple, un Aigle peut être une sous-catégorie de des oiseaux
  • Lorsque vous créez une balise dans WordPress, vous créez un seul mot ou une seule phrase avec laquelle vous souhaitez tamponner (ou, plus littéralement, baliser) votre publication. Il n'y a aucune notion de balises enfants ou de balises parent.

Et c'est la différence entre les taxonomies hiérarchiques et non hiérarchiques. C'est facile, n'est-ce pas? Ceux qui soutiennent les enfants, comme les catégories, sont hiérarchisés; ceux qui ne prennent pas en charge les enfants, comme les balises, ne sont pas hiérarchiques.

Le travail que nous allons faire dans cette série ne joue aucun rôle autre que celui de nous aider à mieux comprendre la signification de cette langue dans le contexte de nos efforts de développement..

Mais lorsque nous commençons à créer par programme ces entités et à leur ajouter des métadonnées, il ne devrait y avoir aucune confusion quant à ce que nous faisons..

Quels sont les termes?

Nous avons défini la taxonomie, mais qu'en est-il des termes? Du Codex:

Dans WordPress, un terme est une classification, un groupe ou un sous-ensemble d'une taxonomie, ce dernier pouvant être une catégorie, un tag ou une taxonomie personnalisée. Par défaut, les termes ont un titre, une limace et une description. Les taxonomies hiérarchiques telles que les catégories peuvent définir un terme parent.

Compte tenu de ce que nous avons discuté jusqu'à présent, c'est exactement ce à quoi nous devrions nous attendre. C'est-à-dire que les termes sont associés aux taxonomies. Les termes, cependant, ont plusieurs aspects notables dont nous devrions être conscients, surtout si nous allons les créer ou travailler avec eux par programme. 

C'est-à-dire que les termes sont composés de:

  • une limace
  • un titre
  • une description

Rappelez-vous que si nous travaillons avec une taxonomie hiérarchique, comme une catégorie, le terme peut éventuellement inclure un terme parent.. 

Pour être clair, cela ne signifie pas qu'une taxonomie ne possède pas un ensemble d'informations s'y rapportant. Par exemple, une taxonomie nécessite un nom, un type de publication auquel elle est associée et un certain nombre d'arguments extérieurs à la portée de ce article. Nous verrons plus à ce sujet dans le prochain article, bien que.

Comment sont-ils liés?

La relation entre taxonomies et termes est quelque peu symbiotique, ce qui signifie que l’une ne peut exister sans l’autre. Cela est particulièrement vrai en ce qui concerne les taxonomies hiérarchiques.

Premièrement, pour ceux qui sont intéressés, le Codex WordPress fournit un diagramme expliquant la relation:

Par exemple, vous pouvez avoir un Catégorie taxonomie, mais vous devez avoir au moins un terme associé. C’est pourquoi WordPress est livré avec une valeur par défaut. Non classé terme.

D'autre part, il est possible de créer un Étiquette taxonomie, mais ne pas avoir de balises qui existent dans la base de données. 

Mais, en tant que développeurs, pouvons-nous aller plus loin? C'est-à-dire que, bien que tous puissent être créés par programme, les utilisateurs ont également la possibilité de les créer et de les ajouter. Du moins, si l'interface utilisateur expose une option pour qu'ils le fassent. 

Exemple: lorsque vous regardez l'interface utilisateur de WordPress, nous avons tous la possibilité de créer des catégories et des balises..

Si, toutefois, vous êtes programmeur et que vous souhaitez intégrer certaines taxonomies et certains termes à la base de données, vous avez la possibilité de le faire et d'empêcher les utilisateurs de les ajouter et de les supprimer de l'interface utilisateur..

Qu'en est-il des métadonnées de terme?

Nous avons exposé les définitions des taxonomies et des termes ainsi que leurs différences, mais il reste une question: pourquoi avons-nous besoin de métadonnées sur les termes? Ou, peut-être aussi, à quoi servent les métadonnées de terme?

C'est une bonne question, et cela explique sans doute pourquoi cette fonctionnalité n'a pas été introduite avant WordPress 4.4. Chose intéressante, le ticket pour cette fonctionnalité a été introduit pour la première fois il y a plus de six ans. La principale justification du ticket (directement depuis Trac lui-même) est la suivante:

Pour le moment, il n’existe aucun moyen spécifique de stocker des données supplémentaires pour la taxonomie. Les développeurs de plug-in doivent développer leur propre méthode pour stocker ces données, par exemple. en les stockant encodés dans le champ description ou en utilisant set_option (). Il sera bon d’ajouter de nouvelles fonctions pour cela, par exemple. add_taxonomy_data () / get_taxonomy_data ().

Si vous êtes un développeur WordPress expérimenté, cela est parfaitement logique. Mais nous n’avons pas tous atteint ce niveau, nous ne sommes donc pas certains des avantages que cela nous procure..

Comme toutes les autres API, elle nous permet de stocker des informations sur tout terme donné existant dans la base de données. Cela peut être n'importe quoi lié au moment où le terme a été créé, qui a créé le terme, ou combien de posts sont marqués avec un terme donné, ou cela nous permet d'associer une image à un terme.

Parce qu’il prend en charge un niveau d’information arbitraire, les possibilités sont extrêmement vastes quant à ce que nous pouvons faire avec cette information. Et à partir du prochain article, nous allons voir exactement que.

Conclusion

À ce stade, vous devriez avoir tout ce que vous devez savoir pour travailler avec les taxonomies et les termes. Bien sûr, vous devrez probablement lire le Codex à quelques reprises lorsque vous travaillez sur un plugin, un thème ou une solution personnalisée pour un client, mais ce n'est pas anormal, même pour un développeur expérimenté..

Dans le prochain article, nous verrons comment utiliser les métadonnées de terme. Plus précisément, nous allons examiner un exemple de code, le relier à l'un des thèmes par défaut de WordPress et surveiller la base de données à mesure que nous apportons des modifications..

En attendant, si vous êtes intéressé par WordPress, le développement de logiciels ou l'intersection des deux, n'oubliez pas de consulter ma page de profil, qui comprend des liens vers tous les cours et tutoriels que j'ai publiés sur Envato Tuts.+. 

Deuxièmement, n'hésitez pas à me suivre sur Twitter à @tommcfarlin, où je parle souvent de ressources liées à WordPress et que je partage, ou suivez mon blog sur lequel j'écris tous les jours au sujet de mon travail avec WordPress ou de sujets en relation directe à cela.

Enfin, si vous recherchez d'autres utilitaires pour vous aider à développer votre ensemble croissant d'outils pour WordPress ou pour que le code soit étudié et devienne plus familier dans WordPress, n'oubliez pas de voir ce que nous avons disponible dans Envato Market..

D'ici là, n'hésitez pas à laisser des questions ou des commentaires ci-dessous, et je ferai mon possible pour répondre à chacun d'entre eux..