Superchargez vos catégories WordPress avec des plugins gratuits

Publié: 2022-02-16

Récemment, je réfléchissais au processus de création d'un site Web de voyage. Nous aurions des articles de blog sur des stations balnéaires spécifiques, puis une taxonomie personnalisée appelée Destinations qui contiendrait des choses comme "Hawaï" et "Îles Canaries". WordPress a été conçu pour ce genre de choses, donc le tri et l'organisation des publications par ces destinations sont rapides et faciles.

Le problème est que, lorsque je vais sur une page d'archives d'articles sur Hawaï par exemple, nos options d'informations sur Hawaï sont assez limitées. Par défaut, les termes ne peuvent avoir qu'un nom, une description en texte brut, un slug et un parent associé.

Superchargez vos catégories WordPress avec des plugins gratuits

Ce que je veux vraiment, c'est une image en vedette, des champs personnalisés et un champ de description dynamique. Je pourrais obtenir toutes ces choses si je transformais les destinations en un type de publication personnalisé, mais je romprais alors avec les merveilleuses relations intégrées, l'interface utilisateur et la vitesse d'une taxonomie.

Heureusement, nous pouvons obtenir toutes ces choses pour les termes de taxonomie, et nous pouvons le faire avec des plugins gratuits. Voici comment.


L'image sélectionnée

Je veux une image en vedette afin que je puisse l'afficher en haut de ma page de terme. Les messages avec le terme Hawaï auront une belle scène de plage en haut.

Pour cela nous allons utiliser le plugin « Simple Featured Image ». Il n'a pas été mis à jour depuis un moment, mais il fonctionne toujours très bien.

SFI crée une page de paramètres dans le menu Paramètres, et vous y définissez la taxonomie sur laquelle vous souhaitez qu'elle apparaisse. N'oubliez pas cela, ou vous serez terriblement confus sur la façon de l'utiliser !

Une fois installé et activé, sur le formulaire pour les nouvelles conditions et les conditions existantes, vous verrez un champ comme celui-ci :

Superchargez vos catégories WordPress avec des plugins gratuits

Lorsque vous cliquez sur le bouton Télécharger/Ajouter, l'interface utilisateur normale de la médiathèque WordPress s'ouvre et vous définissez une image en vedette, comme pour une publication.

Une fois que vous avez sélectionné une image, elle ressemble à ceci :

Superchargez vos catégories WordPress avec des plugins gratuits

Et puis sur la page d'administration de la liste de termes, vous verrez quelque chose comme ceci :

Superchargez vos catégories WordPress avec des plugins gratuits

Et puis nous avons une image en vedette!


Description dynamique

Le champ de description des termes est en texte brut, ce qui n'est pas mal tant que vous ne voulez rien de plus intéressant. J'aime ajouter l'éditeur TinyMCE qui était la valeur par défaut dans WordPress. Pour cela, nous utiliserons le plugin "Visual Term Description Editor".

IMPORTANT : Le plugin Yoast SEO active également cette fonctionnalité. Si vous utilisez déjà Yoast, vous n'en avez pas besoin. Si vous n'utilisez pas Yoast, ne l'installez pas UNIQUEMENT pour cette fonctionnalité.

Il n'y a pas de paramètres pour ce plugin, il fait simplement que toutes les descriptions de termes dans toutes les taxonomies ont l'éditeur TinyMCE. Il ressemble à ceci :

Superchargez vos catégories WordPress avec des plugins gratuits

Et puis la page d'administration principale de la liste de termes ressemble à ceci :

Superchargez vos catégories WordPress avec des plugins gratuits

Nous avons donc maintenant une image en vedette et de meilleures descriptions, mais je veux aussi des champs personnalisés. Voici comment nous allons procéder.


Les champs personnalisés

Term Meta existe en tant que fonctionnalité dans WordPress depuis un certain temps maintenant, mais les utiliser est toujours un peu une corvée. Il y a un merveilleux article dans Smashing Magazine sur la façon de les construire vous-même avec du code.

Vous pouvez également utiliser la plupart des bibliothèques de champs personnalisés courantes telles que MetaBox.io et CMB2 pour continuer à le faire avec du code, mais de manière fluide et standardisée.

Pour cet article, nous allons choisir le moyen le plus simple, à savoir les champs personnalisés avancés. Nous utilisons la version gratuite disponible sur WordPress.org. La version pro fonctionnerait évidemment aussi.

Si vous connaissez déjà ACF, pour obtenir des champs personnalisés sur les termes, votre emplacement devrait ressembler à ceci :

Superchargez vos catégories WordPress avec des plugins gratuits

J'ai ajouté un groupe de champs appelé Détails de la destination, avec un champ standard de type "URL" comme ceci :

Superchargez vos catégories WordPress avec des plugins gratuits

Et dans l'éditeur de termes, cela ressemble à ceci :

Superchargez vos catégories WordPress avec des plugins gratuits


Plus de champs personnalisés

Je n'ai rien ajouté de plus pour mes exemples, mais je suis sûr que si vous connaissez ACF ou tout autre gestionnaire de champs personnalisé, vous pouvez imaginer la puissance. Voici d'autres exemples de champs personnalisés que vous pourriez ajouter :

  • Coordonne les champs afin que vous puissiez afficher une carte Google
  • Un champ de carte réel sur lequel vous pouvez simplement cliquer pour obtenir les coordonnées
  • Méta-informations sur la destination telles que la population, la qualité des routes, l'accès aux aéroports internationaux, les détails culturels importants, etc.

La liste s'allonge aussi loin que votre imagination peut l'emporter.


Utilisation de ces informations

Maintenant que vos termes de taxonomie sont des sources d'informations, comment voyez-vous ces informations sur votre site Web ?

Création d'un fichier modèle

Pour celui-ci, vous allez créer et modifier un fichier de modèle. La plupart des thèmes modernes ont un fichier appelé archive.php , et c'est le fichier qui rend votre archive Post. Certains thèmes ont également un fichier appelé category.php , et ce fichier est utilisé pour afficher une archive des messages dans des catégories spécifiques.

Si vous avez ajouté tous les champs ci-dessus à la taxonomie de catégorie par défaut associée aux articles, vous voudrez faire cette partie suivante dans category.php . S'il n'existe pas, vous pouvez copier archive.php dans category.php .

Si vous utilisez une taxonomie personnalisée comme moi, vous voudrez copier category.php ou archive.php dans taxonomy-{taxonomy}.php , où {taxonomy} est le slug de votre taxonomie. Vous pouvez trouver le slug en accédant à la page d'administration de la taxonomie et en regardant dans l'URL. J'ai créé une taxonomie Destinations, mais mon slug est travel_destination , et ressemble à ceci :

Superchargez vos catégories WordPress avec des plugins gratuits

Donc, mon fichier de modèle s'appelle taxonomy-travel_destination.php .

Obtenir les informations

L'image sélectionnée

Le plugin que nous avons utilisé a une fonction personnalisée pour obtenir l'image. Vous pouvez afficher l'image en vedette de la taxonomie dans le frontal à l'aide de cette fonction php.

 wpsfi_display_image( $termID, $size = 'medium', $class = '', $width = '', $height = '' );
OUVRIR DANS POPUP
 wpsfi_display_image( $termID, $size = 'medium', $class = '', $width = '', $height = '' );

Paramètres:

  • $termID – (Entier) TermID de taxonomie
  • $size – (Chaîne) Taille de l'image
  • $class – (String) Ajouter une classe personnalisée
  • $width – (Entier) Largeur en px
  • $height – (Entier) Hauteur en px

La description

Nous n'avons pas vraiment changé le fonctionnement de la description, seulement ce que nous pouvons y saisir dans le formulaire. Par conséquent, les fonctions WordPress par défaut fonctionnent pour imprimer les descriptions.

get_the_archive_description() obtiendra la description et vous permettra de la mettre dans une variable, ou de la traiter avec une fonction de nettoyage ou quelque chose du genre. Ensuite, vous imprimeriez cette variable comme ceci :

 $description = get_the_archive_description(); print wp_kses_post( $description );
OUVRIR DANS POPUP
 $description = get_the_archive_description(); print wp_kses_post( $description );

Alternativement, vous pouvez simplement utiliser the_archive_description() qui fera écho au contenu pour vous.

Les champs personnalisés

La façon dont vous obtenez vos champs personnalisés dépend de la façon dont vous les avez créés. Si vous avez créé votre propre plugin, en suivant les instructions de cet article de Smashing Magazine, vous voudrez utiliser une fonction WordPress appelée get_term_meta() qui fonctionne exactement comme get_post_meta() . Vous lui transmettez un TermID, la clé du champ que vous voulez et un drapeau pour montrer s'il est au singulier ou au pluriel.

Si vous avez utilisé une bibliothèque comme ACF, Metabox.io ou CMB2, vous souhaiterez probablement utiliser leurs fonctions personnalisées pour obtenir des données.

Par exemple, nous avons utilisé ACF pour créer un champ appelé more_information. Pour obtenir le contenu de ce champ, vous utiliseriez quelque chose comme ceci :

 // get the current taxonomy term $term = get_queried_object(); // var $term_url = get_field( 'more_information', $term ); // make a link echo '<a href="' . esc_url( $term_url ) . '">More Information</a>';
OUVRIR DANS POPUP
 // get the current taxonomy term $term = get_queried_object(); // var $term_url = get_field( 'more_information', $term ); // make a link echo '<a href="' . esc_url( $term_url ) . '">More Information</a>';

CMB2 et Metabox.io ont chacun leurs propres méthodes, vous voudrez les rechercher dans leur documentation.


Résumé

Alors maintenant, dans mon site Web de voyage imaginaire, chaque endroit, comme Hawaï, aura une belle bannière en haut, des informations sur la destination et quelques informations supplémentaires, comme un lien pour obtenir plus d'informations, et tout ce que je veux mettre dans.

Cela transforme vos pages d'archives d'une simple liste de publications en quelque chose qui ressemble à une page Web bien conçue.