Avec la publication de la version 3.0, WordPress a introduit les types de publication personnalisés et mis à jour les taxonomies personnalisées introduites dans la version 2.8. Depuis lors, les utilisateurs et les développeurs de WordPress sont en mesure de créer leurs propres types et taxonomies de publications. Les gens ne sont plus enchaîné aux "messages" et "pages" ternes avec les "catégories" et "tags" ennuyeux.
Oui, l'utilisation de types d'articles personnalisés, de taxonomies personnalisées et de méta-boîtes personnalisées est cool. Tu sais ce qui est plus cool? Créer chacun avec une seule ligne de code.
Je trouve difficile et ennuyeux de créer des types de post personnalisés et des taxonomies avec le register_post_type ()
et register_taxonomy ()
les fonctions. Bien qu’ils soient extrêmement utiles, je déteste un peu quand je dois écrire une série d’arguments et les transmettre avec une fonction que je dois aussi utiliser avec le add_action ()
une fonction.
Même en tant que développeur, il est difficile de faire cela avec chaque type d'article et chaque taxonomie que je dois créer - je ne peux pas imaginer à quel point c'est difficile pour les utilisateurs novices de WordPress.
Ne vous méprenez pas, vous pouvez toujours ou devez les utiliser avec SuperCPT également - mais SuperCPT adhère au principe DRY (ne vous répétez pas) et facilite le processus. En pratique, il vous suffit de définir le "nom singulier" en minuscules de votre type de message ou de votre taxonomie, et SuperCPT gère le reste avec une casse appropriée..
Et la meilleure partie est que vous n'avez pas à vous soucier de créer des boîtes à méta personnalisées et des champs de méta en eux.!
SuperCPT vous permet de créer des méta-boîtes avec des champs qui varient entre des éléments HTML simples d'éditeurs WYSIWYG et des sélecteurs de date. Nous permettre de faire tout cela en écrivant des tableaux simples est de loin le moyen le plus simple que j'ai jamais vu pour créer des méta-boîtes..
Je peux louer SuperCPT toute la journée, mais comme l'a dit le créateur Matthew Boynes sur la page GitHub de SuperCPT, la preuve est dans le pudding et nous devrions arriver aux exemples - juste après nous voyons un impressionnant screencast, cinq minutes.
Prenez une copie du référentiel de plugins WordPress.org, installez-la puis ouvrez celle de votre thème. functions.php déposer au travail la magie de SuperCPT!
http://vimeo.com/59368054
Comme vous pouvez le constater sur la vidéo, la création de types d'articles personnalisés est aussi simple que de taper une ligne de code:
array ('name' => __ ('Computer Parts', 'my-locale'), 'singular_name' => __ ('Computer Part', 'my-locale')), 'public' => true, 'has_archive '=> vrai,)); * / // la méthode SuperCPT $ type_computer_part = new Super_Custom_Post_Type ('partie-ordinateur'); ?>
SuperCPT prend automatiquement "partie informatique
"et supprime les traits d'union et les soulignés et capitalisant chaque mot. Il définit également les formes "singulière" et "plurielle" departie informatique
"et les utilise pour former les étiquettes, comme" Ajouter une nouvelle partie d'ordinateur "ou" Rechercher des parties d'ordinateur ", etc..
Bien sûr, vous pouvez définir les étiquettes à votre guise. En fait, vous pouvez définir tous les arguments que register_post_type ()
a, si vous aimez jouer. Consultez la section "Types de publications personnalisés" du SuperCPT Wiki pour connaître la liste complète des arguments et leurs valeurs par défaut..
$ type_computer_part-> set_icon ('display');
Si vous vous demandez quoi utiliser comme paramètre, consultez la page SuperCPT sous Outils de votre panneau d'administration. Vous y trouverez le nom des icônes.. Créer des taxonomies personnalisées avec SuperCPT ressemble beaucoup à la création de types de publication personnalisés. Encore une fois, une seule ligne suffit pour SuperCPT:
__ ('Fabricants', 'mon-locale'), 'rewrite' => array ('slug' => __ ('fabricant', 'mon-locale'))); * / // la méthode SuperCPT $ tax_manufacturer = new Super_Custom_Taxonomy ('constructeur'); ?>
Comme pour les types de publication personnalisés, les arguments des taxonomies personnalisées sont définis automatiquement, mais ils peuvent également être modifiés. Consultez la section "Types de messages personnalisés" du SuperCPT Wiki pour en savoir plus sur les arguments..
Comme vous pouvez le deviner: cette ligne de code ci-dessus ne permet pas de connecter votre taxonomie personnalisée à un type de publication. Vous devez le faire avec une fonction d’aide de SuperCPT, comme ceci:$ tax_manufacturer-> connect_post_types ('partie-ordinateur');
Bouclez votre ceinture, c'est ma partie préférée! :)
Sérieusement, le meilleur atout de SuperCPT est la facilité d’ajout de boîtes de méta post personnalisées. Vous n'avez pas à vous soucier des codes HTML ni à vous soucier de la sauvegarde, de la désinfection, etc. de vos données. Cependant, nous ne pouvons pas utiliser de codes à une seule ligne pour créer des méta-boîtes cette fois (évidemment).
Il y a deux fonctions essentielles: add_meta_box ()
et add_meta_boxes ()
. (Nous allons nous en tenir au premier pour ce tutoriel.) Le identifiant
et des champs
les paramètres sont obligatoires mais il y a beaucoup d'autres paramètres sur le wiki si vous souhaitez voir.
add_meta_box (array ('id' => 'our-review', // le titre est converti de 'id', s'il n'y a pas de 'title' paramètre 'fields' => array ('score' => array ('label' => __ ('Our Score', 'my-locale'), 'type' => 'radio', 'options' => array ('1', '2', '3', '4', '5 ')),' release-date '=> array (' label '=> __ (' Date de parution ',' my-locale '),' type '=>' date '), // oui, il y a une date picker… 'short-comment' => array ('label' => __ ('Un commentaire court', 'my-locale'), 'type' => 'textarea'), 'review-text' => array ( 'label' => __ ('Full Review', 'my-locale'), 'type' => 'wysiwyg') //… et il y a une zone de texte WYSIWYG! :)))); ?>
Maintenant, je sais qu'il y a beaucoup de tableau
s, mais il y a des choses que même SuperCPT peut prédire, non? :)
Il y a beaucoup d'éléments de champs que vous pouvez placer dans les boîtes de méta:
Une dernière chose: vous avez besoin d’une fonction wrapper pour définir ces types de publication personnalisés et lier cette fonction à une action - SuperCPT recommande after_setup_theme
hook, mais si vous allez écrire un plugin pour créer les types de post personnalisés et les taxonomies, vous feriez mieux d'utiliser le hook plugins_loaded
attendre le chargement des plugins. Vous devez également être sûr que le Super_Custom_Post_Type
la classe existe avant de la référencer.
Voici la fonction de démonstration de la documentation SuperCPT:
Là, vous savez maintenant tout sur le gestionnaire de type de message personnalisé et de taxonomie le plus simple, SuperCPT! Pour plus d'informations, consultez la documentation complète. Il existe de nombreuses fonctions d'assistance, actions et filtres qui pourraient vous intéresser.
Que pensez-vous de ce plugin WordPress? Dites-nous ce que vous pensez en commentant ci-dessous, et si cela vous a plu (je suis sûr que vous le ferez!), N'oubliez pas de partager le post!