Vous souhaitez débloquer encore plus de puissance d'organisation dans WordPress ? Essayez d'ajouter des champs de métadonnées personnalisés à vos taxonomies personnalisées.
Les taxonomies personnalisées vous permettent d'organiser votre contenu au-delà des catégories et des étiquettes. Mais parfois, il est utile d'ajouter des détails et des champs supplémentaires pour les décrire, c'est là qu'interviennent les champs de métadonnées personnalisés.
Dans cet article, nous vous montrerons comment ajouter des champs de métadonnées supplémentaires à vos taxonomies personnalisées dans WordPress.

Quand faut-il ajouter des champs de métadonnées personnalisés à une taxonomie personnalisée ?
Lorsque vous créez du nouveau contenu sur votre site Web WordPress, vous pouvez l'organiser en utilisant les deux taxonomies par défaut, catégories et étiquettes.
Certains sites Web bénéficient de l'utilisation de taxonomies personnalisées. Celles-ci vous permettent de trier votre contenu de manière supplémentaire.
Par exemple, un site Web qui publie des critiques de livres pourrait ajouter les taxonomies « Sujets » et « Auteurs » afin que les visiteurs puissent trouver rapidement les critiques qui les intéressent.
Pour plus d'informations, consultez notre guide sur la création de taxonomies personnalisées dans WordPress.
Chaque taxonomie n'a que trois ou quatre champs par défaut : nom, slug, parent (si elle est hiérarchique) et description.

Il est parfois utile d'ajouter des champs supplémentaires pour mieux décrire la taxonomie. Par exemple, vous pourriez ajouter un champ « année de naissance » à une taxonomie « auteurs ».
Cela étant dit, voici comment ajouter des champs de métadonnées personnalisés aux taxonomies personnalisées dans WordPress.
Étape 1 : Ajouter des champs de métadonnées personnalisés aux taxonomies personnalisées dans WordPress
Tout d'abord, vous devez installer et activer le plugin Advanced Custom Fields. Pour en savoir plus, consultez notre guide étape par étape sur comment installer un plugin WordPress.
Ensuite, rendez-vous sur la page Champs personnalisés » Ajouter nouveau. Ici, vous pouvez ajouter un groupe de champs qui contient un ou plusieurs nouveaux champs.
Il vous sera demandé de donner un titre au groupe de champs, et celui-ci sera affiché avec les nouveaux champs lors de l'ajout ou de la modification de la taxonomie. Dans ce tutoriel, nous voulons ajouter un champ personnalisé à la taxonomie Auteurs, nous allons donc nommer le groupe de champs « Détails de l'auteur ».

Une fois que vous avez fait cela, vous devriez cliquer sur le bouton « + Ajouter un champ » pour ajouter un champ. Un nouveau formulaire apparaîtra où vous pourrez remplir les détails du nouveau champ.
Une fois que vous avez saisi une étiquette de champ, le nom du champ sera créé automatiquement pour vous, et vous pourrez le modifier si vous le souhaitez. Vous devrez utiliser le nom du champ plus tard dans le tutoriel, alors notez-le.

Vous devriez maintenant renseigner les autres détails du champ, tels que le type de champ, les instructions pour vos auteurs qui rempliront le formulaire, et si ce champ est obligatoire. D'autres options non visibles dans la capture d'écran incluent le texte par défaut, le texte de substitution, la limite de caractères, et plus encore.
Si vous souhaitez ajouter un deuxième champ, vous devez cliquer sur le bouton « + Ajouter un champ » et répéter le processus. Sinon, faites simplement défiler vers le bas jusqu'à la section Emplacement.
Ici, vous pouvez créer des règles qui décrivent où afficher le nouveau champ. Vous devez sélectionner « Taxonomie » dans le premier menu déroulant et laisser le champ du milieu sur « est égal à ». Enfin, sélectionnez la taxonomie personnalisée correcte pour le dernier champ. Dans ce tutoriel, nous sélectionnerons « Auteur ».

Si vous souhaitez ajouter ce champ à une autre taxonomie, vous pouvez cliquer sur le bouton « Ajouter un groupe de règles » et répéter l'étape.
Vous devriez maintenant ajuster tous les autres paramètres de la page. Nous laisserons simplement les valeurs par défaut. Une fois que vous avez terminé, vous devriez faire défiler jusqu'en haut de la page et cliquer sur le bouton « Publier ».

Félicitations, vous avez ajouté avec succès un champ personnalisé à une taxonomie personnalisée dans WordPress. Mais il vous reste encore du travail à faire.
Étape 2 : Ajouter des données au nouveau champ personnalisé
Bien que la taxonomie ait un nouveau champ, elle ne contient pas encore de données. Vous devriez prendre le temps de le faire maintenant.
Dans notre exemple, nous devons saisir l'année de naissance de chaque auteur. Pour ce faire, nous devons naviguer vers Articles » Auteurs et cliquer sur le nom de l'auteur que nous souhaitons modifier.

Après cela, nous pouvons saisir des données dans le nouveau champ. Dans ce cas, nous allons saisir l'année de naissance de cet auteur. N'oubliez pas de cliquer sur le bouton « Mettre à jour » pour enregistrer les nouvelles données.

Vous devriez suivre les mêmes étapes sur votre site Web pour ajouter des données à votre taxonomie personnalisée.
Une fois que vous avez terminé, il reste encore une étape. Bien que vous puissiez voir le champ personnalisé lorsque vous êtes connecté à votre espace d'administration WordPress, les visiteurs de votre site Web ne pourront pas le voir. Vous devrez ajouter le champ à la page d'archive de la taxonomie personnalisée.
Étape 3 : Afficher un champ personnalisé sur la page d'archive de votre taxonomie
Dans cette étape, vous devrez ajouter du code à vos fichiers de thème. Si vous ne l'avez jamais fait auparavant, consultez notre guide pour débutants sur comment coller des extraits du Web dans WordPress.
La première chose à faire est d'aller dans le dossier de votre thème et de rechercher votre fichier d'archive de taxonomie. Il aura un nom comme taxonomy-NOMDETAXONOMIE.php.
Par exemple, si vous avez une taxonomie personnalisée appelée « auteurs », vous devez rechercher un fichier nommé taxonomy-authors.php.
Si vous ne voyez pas ce fichier, recherchez archive.php. Vous devrez en faire une copie et la nommer comme décrit ci-dessus.
Remarque : Si votre thème n’inclut pas archive.php, vous utilisez probablement un framework de thème WordPress et devrez créer l'archive de taxonomie manuellement. Un bon point de départ pour apprendre à créer des fichiers d'archives est notre guide sur comment créer des pages d'archives personnalisées dans WordPress.
Vous devez maintenant ajouter le code suivant à l'archive de taxonomie juste avant la boucle :
<?php
// get the current taxonomy term
$term = get_queried_object();
// get the taxonomy meta field
$taxonomymetafield = get_field('FIELDNAME', $term);
// display the taxonomy meta field
echo $taxonomymetafield;
?>
Notez que vous devez remplacer « NOMDUCHAMP » par le nom du champ réel que vous avez créé ci-dessus. Rappelez-vous, nous vous avons demandé de le noter.
Dans notre exemple, le nom du champ est « year_of_birth ». Nous ajouterons également une description, afin que nos visiteurs comprennent ce que signifie le champ. Nous ajouterons donc le code suivant au fichier d'archive de taxonomie taxonomy-authors.php :
<?php
// get the current taxonomy term
$term = get_queried_object();
// get the taxonomy meta field
$taxonomymetafield = get_field('year_of_birth', $term);
// display the taxonomy meta field
echo "Year of birth: ";
echo $taxonomymetafield;
?>
Voici à quoi cela ressemblait lorsque nous l'avons testé sur notre site de démonstration :

Nous espérons que ce tutoriel vous a aidé à apprendre comment ajouter des champs de métadonnées personnalisés aux taxonomies personnalisées dans WordPress. Vous voudrez peut-être aussi apprendre comment ajouter des mots-clés et des méta-descriptions dans WordPress, ou consulter notre liste de plugins WordPress indispensables pour développer votre site.
Si cet article vous a plu, abonnez-vous à notre chaîne YouTube pour des tutoriels vidéo WordPress. Vous pouvez également nous retrouver sur Twitter et Facebook.

Tarek Anandan
Si vos données ne s'affichent pas et que vous utilisez une version récente de WordPress, utilisez get_term_meta() au lieu de get_tax_meta().
Subin
voici mon code:
$config = array(
‘id’ => ‘tax_meta_box’, // id de la boîte de métadonnées, unique par boîte de métadonnées
‘title’ => ‘Boîte de métadonnées de taxes’, // titre de la boîte de métadonnées
‘pages’ => array(‘category’), // nom de la taxonomie, accepte les catégories, post_tag et les taxonomies personnalisées
‘context’ => ‘normal’, // où la boîte de métadonnées apparaît : normal (par défaut), avancé, latéral ; facultatif
‘fields’ => array(), // liste des champs de métadonnées (peuvent être ajoutés par des tableaux de champs)
‘local_images’ => false, // Utiliser des images locales ou hébergées (images de la boîte de métadonnées pour ajouter/supprimer)
‘use_with_theme’ => get_template_directory_uri() . ‘/Tax-Meta-Class/Tax-meta-class’
);
/*
* Initialiser votre boîte de métadonnées
*/
$my_meta = new Tax_Meta_Class($config);
//Champ image
$my_meta->addImage(‘image_field’,array(‘name’=> __(‘Mon Image ‘,’tax-meta’)));
$my_meta->Finish();
———————————————————————————————————————–
term_id;
$saved_data = get_tax_meta($term_id,’image_field’,true);
echo ”;
echo $term_id; // Affiche ‘1’ qui est l’ID de la catégorie
echo $saved_data; // N’affiche rien. Je me demande pourquoi !!
exit;
?>
James Dower
J’ai aussi des problèmes pour obtenir le chemin d’une image téléchargée. Il affiche juste :
Tableau
…les champs de texte vont bien.
J’utilise :
$prefix = ‘ttp_’;
$my_meta->addImage($prefix.’logo_id’,array(‘name’=> __(‘Logo’,’tax-meta’)));
Et sur la page taxonomy.php :
$logo = get_tax_meta($term->term_id, ttp_logo_id);
Quelqu’un peut-il m’aider s’il vous plaît ? J’y suis depuis des HEURES !
James Dower
…et quelqu’un peut-il expliquer comment afficher les champs répétitifs ?!
James Dower
Pour tous ceux qui ont du mal à faire lire ceci, j'ai trouvé une apostrophe errante, cela fonctionne pour moi :
$data = get_tax_meta($term->term_id, ba_text_field_id); necho $data;
siva
Salut l'équipe, merci beaucoup...
Ketan
Bonjour,
J'ai activé le plugin. mais je ne vois pas où je peux ajouter un champ de taxonomie personnalisé côté admin. s'il vous plaît, répondez-moi.
Merci, Ketan.
Francisco
Thanks a lot this has been very useful!!!!
J'ai affiché correctement un champ texte en utilisant ce code : // Obtenir l'ID de taxonomie correct par slug $term = get_term_by( ‘slug’, get_query_var( ‘term’ ), get_query_var( ‘taxonomy’ ) );
// Obtenir les métadonnées de taxonomie $saved_data = get_tax_meta($term->term_id,’ba_text_field_id’); necho $saved_data;
MAIS j'ai aussi besoin d'afficher une image, j'utilise ce code php dans mon modèle :
// Obtenir l'ID de taxonomie correct par slug $term = get_term_by( ‘slug’, get_query_var( ‘term’ ), get_query_var( ‘taxonomy’ ) );
// Obtenir les métadonnées de taxonomie $saved_data = get_tax_meta($term->term_id,’ba_image_field_id’); echo $saved_data;
But it doesn’t display anything!
Il affiche juste un seul mot « array »
Qu'est-ce qui pourrait être faux ?
David Beastall
Merci pour ça, le tutoriel semble incomplet selon moi.
Hemanta Chakladar
Je cherche aussi ça.
Hemanta Chakladar
Je suis bloqué.
Je vois l'option de métadonnées dans la catégorie WordPress et pas dans ma taxonomie personnalisée. Où puis-je ajouter cette option pour ajouter des métadonnées personnalisées à ma taxonomie personnalisée ? Où est-ce défini ?
Marco Panichi
Comment ajouter une case à cocher multiple pour sélectionner un ou plusieurs utilisateurs ?
Ankur
Salut Marco, As-tu eu une réponse à ce sujet ? Je cherche aussi la même fonctionnalité.
Joe Chow
Merci beaucoup. Je vois qu'il y a un tas de champs affichés dans la catégorie de publication. Cependant, je veux juste savoir comment rendre le code utilisable uniquement pour la catégorie de produits woocommerce.
Quelqu'un peut-il donner une astuce ?
Joe
Comment obtenir les informations de taxonomie sur un modèle de page personnalisé au lieu d'une page taxonomy.php ?
Jason Gateman
Merci pour ce tutoriel ! Comment faire pour que les métadonnées s'affichent sur une page de publication personnalisée que j'ai créée, par opposition à la seule page de taxonomie ?
AD
Salut les gars,
Pour ceux qui ont des problèmes pour afficher le contenu sauvegardé. Utilisez le préfixe devant la clé.
//Obtenir les métadonnées de taxonomie
$saved_data = get_tax_meta($term->term_id,’text_field_id’);
echo $saved_data;
Ce devrait être ba_text_field_id (étant donné que le préfixe est ba_).
J'espère que cela aide, salut.
Dan
Je voulais appuyer ce commentaire, car il peut être assez déroutant de comprendre pourquoi l'exemple ne fonctionne pas. Si vous regardez dans le fichier « Tax meta class », vous verrez en haut qu'Ohad définit une variable $prefix qui est ajoutée à chaque fonction de sauvegarde.
Donc, pour obtenir le résultat à afficher, vous devez inclure le préfixe. Vous pouvez définir le préfixe comme vous le souhaitez, y compris « » . Je n'ai aucune idée de ce que signifie « ba_ », mais c'est ce qu'il y a par défaut.
L'exemple devrait lire :
$saved_data = get_tax_meta($term->term_id,’ba_text_field_id’);
Chris
Merci beaucoup ! Ça fonctionne très bien. Vous m'avez fait gagner beaucoup de temps de codage.
Ante
Ok, je suis bloqué.
//Obtenir l’ID de taxonomie correct par slug
$term = get_term_by( ‘slug’, get_query_var( ‘term’ ), get_query_var( ‘taxonomy’ ) );
//Obtenir les métadonnées de taxonomie
$saved_data = get_tax_meta($term->term_id,’text_field_id’);
echo $saved_data;
Donc, ‘taxonomy’ est ma taxonomie personnalisée, disons ‘project_clients’
‘text_field_id’ est l’ID du champ de saisie, c’est $prefix.’text_area’…
Qu’est-ce que ‘term’ ?????
Steve
Ante,
Avez-vous fait des progrès à ce sujet ??
Je me pose la même question – j’ai parcouru tellement de commentaires et de pages parlant de cela, mais je ne trouve pas de solution. Toute aide serait appréciée si vous avez trouvé la réponse.
Le simple ajout de ce qui suit à mon fichier taxonomy.php ne fonctionne pas :
//Obtenir l’ID de taxonomie correct par slug
$term = get_term_by( ‘slug’, get_query_var( ‘term’ ), get_query_var( ‘taxonomy’ ) );
//Obtenir les métadonnées de taxonomie
$saved_data = get_tax_meta($term->term_id,’text_field_id’);
echo $saved_data;
fp-admin
J’essaie d’ajouter tout ce que je mets dans l’éditeur WYSIWYG sur le front-end du site web. Honnêtement, je n’ai aucune idée de ce que je fais, mais voici mon code jusqu’à présent :
term_id,’wysiwyg_field_id’);
?>
<a href="”>
ELiane
Bonjour,
J’ai utilisé le plugin mais je ne peux pas obtenir le code sur mon Taxonomy.php.
J’utilise ce code pour afficher le champ
term_id,’text_field_id’);
echo $saved_data;
?>
Dois-je faire autre chose?
Merci
Support WPBeginner
oui si vous avez suivi toutes les instructions comme décrit ci-dessus, alors cela devrait fonctionner.
Admin
Tejas Deshmukh
Bonjour, Merci particulièrement pour cette idée. Ce plugin fonctionne à merveille. J’ai ajouté trois champs supplémentaires dans l’option d’ajout et de modification de terme particulier. mais quand je crée une catégorie dedans à ce terme, je ne peux pas enregistrer la valeur pour ces trois champs supplémentaires. Des suggestions pour cela ?
alexut
Mais comment puis-je extraire les données de la page d'archive ? vous devriez ajouter cela aussi car c'est une demande courante.
Kisshomaru
Brillant ! Vous n'avez aucune idée du temps que j'ai passé à chercher un moyen d'ajouter des « quantités » à des « produits ». Ce n'étant pas un site de commerce, il était fastidieux d'associer un article culinaire à une taxonomie d'ingrédients et de ne pas pouvoir modifier le nombre de concombres pour chaque article.
Merci !
Mike Jackson
Bonjour – J'ai du mal à faire fonctionner cela. J'ai les champs de données visibles dans ma taxonomie personnalisée mais je ne peux pas appeler les données dans mon brand-description.php en utilisant le code php que vous avez collé en bas de votre article. Il n'affiche pas d'erreur, il ne fonctionne tout simplement pas.
J'apprécierais vraiment des explications supplémentaires à ce sujet si vous avez le temps.
Merci
Mike Jackson
C'est une belle trouvaille ! J'essaie de résoudre ce problème depuis quelques semaines. Avez-vous une idée de comment ajouter les nouveaux champs aux colonnes ?
Mike Jackson
J'ai aussi du mal à afficher quoi que ce soit sur la page. J'ai ce code appliqué et des données dans les champs mais rien ne s'affiche sur le site
term_id,’textarea_field_id’);
echo $saved_data;
?>
Personnel éditorial
Ce code fonctionne sur la page d'archive de taxonomie. S'il ne s'affiche pas, il y a de fortes chances que le code ne parvienne pas à obtenir l'ID de la taxonomie. Ce serait du moins ma supposition.
-Syed
Admin
FJ
Eh bien, cela semble bien et a fonctionné pour les catégories, mais pour une raison quelconque, cela n'a pas fonctionné sur une taxonomie personnalisée. Ai-je manqué quelque chose ? Y a-t-il un hook quelque part que je n'ai pas regardé ?
En tout cas, merci beaucoup pour ces éclaircissements sur le travail d'Ohad. Je l'ai côtoyé en me demandant comment diable je pouvais l'utiliser correctement. Je suis juste le type qui fait les choses soi-même, pas un vrai développeur, je suis sûr que vous l'avez déjà compris.
Merci encore.
Personnel éditorial
À la ligne 24 de example-usage.php, vous devriez pouvoir spécifier votre taxonomie personnalisée.
Admin
Ben
Pour clarifier – Ligne 24 de taxonomy-fields.php
‘pages’ => array(‘category’), // nom de la taxonomie, accepte les catégories, post_tag et les taxonomies personnalisées
CHANGEZ le XXX par le nom de votre taxonomie personnalisée
‘pages’ => array(‘xxxxx’), // nom de la taxonomie, accepte les catégories, post_tag et les taxonomies personnalisées
Kobbe
@ Éditeur, veuillez me pardonner, comment puis-je afficher un champ de texte
Personnel éditorial
Vous devez utiliser le code PHP que nous avons partagé. Assurez-vous de changer le nom du champ pour celui que vous avez.
Admin
Kobbe
Merci éditeur, j'apprécie vraiment la réponse. Voici class-usage-demo.php – http://pastebin.com/ctZPeS0w
C'est ce que je fais mais rien ne s'affiche/ne sort. Qu'est-ce que je fais de mal..? et est-il possible d'afficher le code (si possible) quelque part dans mon thème... Merci
Personnel éditorial
Le code que vous avez configure simplement le côté administrateur. Pour afficher le code, regardez le code PHP que nous avons partagé dans l'article. Vous devez l'utiliser dans votre fichier d'archive de taxonomie.
gaurav kaushik
c'est cool..
mais où sont enregistrées les données ? dans la table postmeta ou crée-t-elle une nouvelle table ?
Personnel éditorial
Il le fait dans la table des options.
Admin
Gaurav Kaushik
pouvons-nous modifier le backend de ce plugin... je veux dire, nous voulons créer une table termmeta (meta_id,term_id,meta_key,meta_value)... et y enregistrer les métadonnées de taxonomie... ou le connecter à ce plugin ? http://wordpress.org/extend/plugins/simple-term-meta/
Jim
Super truc. Je vais implémenter cela sur notre blog à l'avenir.
Michelle
Oh thanks you so much, I’ve been wondering how to identify tags as being English or Spanish for my bilingual site – this helps enormously
Jaime
J'ai en fait juste fini de coder des champs personnalisés pour une taxonomie personnalisée pour un projet sur lequel je travaille. J'adore la flexibilité – je vais certainement jeter un œil au plugin pour de futurs projets !
Personnel éditorial
Oui, c'est la meilleure partie. Nous adorons tomber sur des bibliothèques comme celle-ci qui facilitent grandement la vie des développeurs.
Admin