Guide du débutant sur les taxonomies WordPress un plugin personnalisé

Tout au long de cette série, nous avons examiné les taxonomies WordPress: leur nature, leur fonctionnement, comment les différencier entre les différents types existants et leur stockage dans la base de données sous-jacente..

La seule chose que nous n’ayons pas encore faite, c’est de mettre au point un plugin qui montre comment utiliser l’API pour implémenter nos propres taxonomies personnalisées. Donc, dans ce post, nous allons faire exactement cela. 

Rappel du premier post de cette série:

Taxonomie est l'un de ces mots que la plupart des gens n'entendent ni n'utilisent. Fondamentalement, une taxonomie est un moyen de regrouper des éléments.

Et tout au long de cette série, nous avons utilisé la photographie et la vidéographie comme exemples de classifications. Donc, pour le plugin que nous allons construire, nous inclurons des taxonomies hiérarchiques et non hiérarchiques pertinentes pour ces deux classifications..

  1. Les taxonomies hiérarchiques incluront les taxonomies de base de Photographies et Vidéos.
  2. La taxonomie non hiérarchique servira à spécifier le type de film utilisé. Cela peut être Noir et Blanc, Couleur, Sépia, ou quelle que soit la couleur que vous souhaitez spécifier.

Enfin, le plug-in va fonctionner avec le type de message standard existant fourni avec WordPress. Cela devrait donner le maximum de flexibilité en ce qui concerne la création d'un plugin, la démonstration des concepts et son utilisation dans votre propre installation..

Mes taxonomies personnalisées

Pour les besoins de l'exemple de plugin, nous allons l'appeler Mes taxonomies personnalisées et nous allons le construire dans les étapes suivantes:

  1. Nous préparerons le fichier de plug-in principal contenant le texte d'en-tête approprié pour afficher le plug-in dans le tableau de bord WordPress..
  2. Nous allons configurer le code nécessaire à l'exécution du plugin principal.
  3. Nous allons écrire du code qui introduira à la fois le Photographies et Vidéos taxonomie.
  4. Nous allons écrire du code qui introduira le Type de film taxonomie.
  5. Nous allons ensuite tester le plugin complet.

1. L'en-tête du plugin

Avant de faire autre chose, créez-vous un répertoire dans wp-content / plugins appelé mon-coutumes-taxonomies et introduisez un fichier appelé mon-coutume-taxonomies.php.

Dans le fichier, ajoutez le bloc de commentaires de code suivant:

À ce stade, vous devriez pouvoir vous connecter au tableau de bord WordPress, voir le nom du plug-in et l'activer. Bien sûr, rien ne se passera réellement puisque nous n'avons encore rien fait avec le code source.

Ensuite, nous devons créer un autre fichier qui sera utilisé pour alimenter le plugin. Ce sera basé sur les principes de programmation orientés objet donc nous allons créer un fichier appelé class-my-custom-taxonomies.php.

Ne vous inquiétez pas pour le remplir avec n'importe quel code source pour l'instant. Revenons à mon-coutume-taxonomies.php et ajoutez une condition pour vous assurer que le fichier du plugin principal ne peut pas être exécuté en dehors de l'environnement WordPress.

Placez ceci directement sous le commentaire de code que nous avons fourni ci-dessus.

2. Exécution du Core Plugin

À ce stade, nous sommes prêts à écrire du code qui pilotera réellement le plug-in. Définissons donc la classe et une fonction de base pour l’initialisation:

 * / class My_Custom_Taxonomies / ** * Initialise le plugin en enregistrant les points d'ancrage * nécessaires à la création de nos taxonomies personnalisées dans WordPress. * * @since 1.0.0 * / public function init () 

Après cela, revenons à mon-coutume-taxonomies.php et ajoutez un code pour inclure le fichier ainsi qu'une méthode qui créera une instance de la classe et l'exécutera:

init ();  custom_taxonomies_run ();

Maintenant, nous avons tout ce dont nous avons besoin pour commencer à configurer nos hooks et callbacks pour créer nos taxonomies personnalisées.

3. Introduire Photographies et Vidéos

À ce stade, nous sommes prêts à commencer à présenter nos taxonomies. Nous allons d'abord nous concentrer sur nos deux taxonomies hiérarchiques - Photographies et Vidéos.

Dans le corps de la classe de class-my-custom-taxonomies.php fichier, ajoutez la fonction suivante:

 'Photographs', 'singular_name' => 'Photograph', 'edit_item' => 'Éditer la photographie', 'update_item' => 'Mettre à jour la photographie', 'add_new_item' => 'Ajouter une nouvelle photo', 'menu_name' => ' Photographies' ); $ args = array ('hierarchical' => true, 'labels' => $ labels, 'show_ui' => true, 'show_admin_column' => true, 'rewrite' => array ('slug' => 'photograph') ) register_taxonomy ('photograph', 'post', $ args); 

Cette fonction est responsable de la création du Photographies taxonomie et sera appelé à partir de la fonction init lorsque le moment est venu.

Maintenant, faisons la même chose pour Vidéos:

 'Videos', 'singular_name' => 'Video', 'edit_item' => 'Modifier la vidéo', 'update_item' => 'Mettre à jour la vidéo', 'add_new_item' => 'Ajouter une nouvelle vidéo', 'menu_name' => ' Vidéos' ); $ args = array ('hierarchical' => false, 'labels' => $ labels, 'show_ui' => true, 'show_admin_column' => true, 'rewrite' => array ('slug' => 'video') ) register_taxonomy ('video', 'post', $ args); 

Appelons ces deux depuis la fonction init. Nous faisons cela en enregistrant ces fonctions avec le init crochet tel que fourni par WordPress:

Ici, nous devrions pouvoir nous diriger vers Ajouter un nouveau message et voir nos nouvelles options de taxonomie visibles dans le tableau de bord. Sinon, revérifiez votre code avec celui partagé ci-dessus.

Maintenant que nous avons introduit nos taxonomies hiérarchiques, passons à l'introduction de notre Type de film - ou notre non-hiérarchique - taxonomie.

4. Introduire Type de film

Ce n'est vraiment pas si différent du code que nous avons écrit jusqu'à présent. Vraiment, la principale différence est qu'au lieu de spécifier hiérarchique comme vrai, nous allons le définir comme faux.

 'Film Type', 'singular_name' => 'Type de film', 'edit_item' => 'Modifier le type de film', 'update_item' => 'Mettre à jour le type de film', 'add_new_item' => 'Ajouter un nouveau type de film', ' menu_name '=>' Type de film '); $ args = array ('hierarchical' => false, 'labels' => $ labels, 'show_ui' => true, 'show_admin_column' => true, 'rewrite' => array ('slug' => 'type de film ')); register_taxonomy ('type de film', 'post', $ args); 

Cela se traduira par un type d'élément d'interface utilisateur différent, qui ressemble davantage à des balises que les options de catégorie que vous voyez ci-dessus..

Enfin, ajoutez la ligne suivante à la méthode init avec le reste des hooks:

Notez que les fonctions ressemblent davantage aux balises qu'aux catégories. Encore une fois, pour réitérer, c’est l’une des principales différences entre les taxonomies hiérarchiques et non hiérarchiques..

5. Tester le plugin complet

Nous sommes maintenant prêts à faire tourner le plugin. En supposant que vous ayez tout suivi correctement tout au long de ce didacticiel, vous devriez pouvoir créer un nouveau message, le tamponner avec un type de message. Photographier ou un type de Vidéo ainsi qu'un type de Film et laissez-le persister les modifications après avoir sauvegardé ou mis à jour votre message.

Sinon, revérifiez votre code avec ce qui est référencé ici et avec ce qui est référencé dans le référentiel GitHub associé..

Conclusion

Cela termine le Guide du débutant sur les taxonomies WordPress. Tout au long de la série, nous avons largement analysé la définition de ce que sont les taxonomies et leur rôle dans WordPress. Nous avons même mis en œuvre quelques-unes de nos propres.

À ce stade, vous devez bien comprendre le concept et savoir comment l'inclure dans votre prochain projet..

Si non, n'hésitez pas à laisser des questions, des commentaires ou des commentaires généraux dans le champ ci-dessous.