Types de publication personnalisés WordPress – Guide du débutant

Publié: 2017-01-04

WordPress n'est plus seulement un outil pour écrire et publier des articles de blog. Au fil des ans, il a évolué pour devenir un système de gestion de contenu extensible, flexible et robuste. WordPress est en train de devenir lentement mais sûrement un cadre à part entière pour la création d'applications Web. L'une des choses qui rend ce CMS si ajustable, ce sont les types de publication personnalisés.

Par défaut, WordPress est livré avec 5 types de publication de contenu, dont 2 devraient vous sembler très familiers : la publication et la page. Mais les utilisateurs peuvent créer autant de types de publication personnalisés qu'ils en ont besoin et les utiliser pour peaufiner WordPress en fonction de leurs besoins. Dans cet article, nous nous familiariserons avec les types de publication personnalisés WordPress et comment ils peuvent vous aider à créer des sites Web impressionnants. Nous couvrirons deux façons de créer des types de publication personnalisés : manuellement et en utilisant un plugin.

Types de publication personnalisés WordPress

Prêt à l'emploi, WordPress est livré avec les types de publication suivants :

  • Poste
  • Page
  • Révision
  • Attachement
  • le menu de navigation

WordPress traite chacun de ses types de publication différemment - en permettant des options et des fonctionnalités uniques. Un exemple simple serait les catégories et les balises, qui sont exclusives au type de publication "post". Vous pouvez définir votre article de blog dans une catégorie spécifique, mais vous ne pouvez pas faire de même pour une page statique. Les pages, en revanche, peuvent avoir des parents et des modèles.

Les types de publication mentionnés jusqu'à présent sont réservés par WordPress. Les utilisateurs peuvent créer leurs propres types de publication personnalisés pour étendre les fonctionnalités du site Web et mieux organiser leur contenu. Habituellement, la création de types de publication personnalisés va de pair avec la création de champs personnalisés et de taxonomies personnalisées, qui vous permettent d'insérer un contenu et des options uniques, spécifiques à un type de publication donné. Mais laissons cela pour une autre fois et concentrons-nous sur la configuration d'un type de publication unique pour notre site Web.

Exemples de types de publication personnalisés

Un type de publication peut être n'importe quel type de contenu dont vous avez besoin pour votre site Web. Disons que nous avons un site Web de podcast qui doit afficher des épisodes de podcast et doit publier des articles de blog occasionnels mais séparés. Maintenant, si nous mélangeons tout notre contenu (podcasts et articles de blog) en un seul endroit, notre section de contenu deviendra vraiment désordonnée très rapidement. C'est pourquoi, pour nos articles de blog occasionnels, nous utiliserons le type d'article par défaut "post" dans WordPress, qui nous permet d'utiliser les taxonomies par défaut : catégories et balises.

Quant à notre section Podcast , nous allons créer un type de publication personnalisé appelé Podcast . De cette façon, nous pouvons séparer les deux types de contenu différents sur le site Web et les organiser de manière soignée. Plus tard, nous pourrons créer des champs personnalisés pour notre section de podcasts comme la durée de l'épisode, les hôtes de l'émission, les liens, etc. De plus, nous pouvons configurer des taxonomies personnalisées spécifiques à ce type de contenu, comme les catégories de podcasts, les émissions de podcasts et plus encore. Vous voyez où cela mène et quelle flexibilité WordPress offre en termes de manipulation et de structure de contenu.

Créer un type de publication personnalisé dans WordPress

Il existe 2 façons de créer un type de publication personnalisé dans WordPress : manuellement (assez facile, mais nécessite une certaine familiarité avec le codage) et en utilisant un plugin (méthode beaucoup plus simple, mais vous oblige à garder le plugin installé). Lequel choisir ? Avoir de nombreux plugins peut vous causer des maux de tête en raison d'incompatibilités, de problèmes de performances et d'un mauvais code. Si vous avez déjà installé des tonnes de plugins, vous voudrez peut-être vous salir les mains cette fois-ci. Nous couvrirons les deux méthodes et vous déciderez laquelle vous convient le mieux.

Utiliser un plug-in

Il existe une poignée de plugins pour créer des types de publication personnalisés. L'une des plus populaires est l'interface utilisateur de type de publication personnalisée, qui vous permet également de créer des taxonomies personnalisées pour votre type de publication.

Remarque importante : les types de publication créés avec un plug-in disparaîtront si vous supprimez le plug-in en question. Les données seront dans la base de données, mais votre type de publication personnalisé ne sera plus enregistré et ne sera pas accessible depuis la zone d'administration.

L'interface de ce plugin est assez intuitive et simple. Vous cliquez sur Ajouter nouveau, puis fournissez un nom de type de publication, une étiquette, une étiquette singulière et une description pour le type de publication personnalisé. Non pas que les 5 types de publication WordPress soient réservés, et vous ne pouvez pas utiliser ces noms. Voici un exemple de ce que vous devez saisir :

Nom du type de publication : Podcasts
Label : Podcasts
Nom au singulier : Podcast
Description : Type de publication pour le podcasting

Le champ de nom singulier est utilisé par WordPress pour afficher certains éléments et actions de l'interface utilisateur comme Ajouter un nouveau podcast.

Manuellement

Pour créer manuellement un type de publication personnalisé, vous devez modifier le fichier functions.php de votre thème. Utilisez votre client FTP préféré et connectez-vous au serveur sur lequel votre site Web est hébergé. Une fois connecté, vous devez :
1. Accédez à wp-content -> thèmes -> votre thème
2. Ouvrez functions.php
3. Si vous utilisez un thème enfant et que ce fichier n'existe pas, créez-le.
4. Insérez le code ci-dessous.

Selon notre exemple, nous devons créer un type de publication personnalisé de podcast. Voici le code pour cela (à partir de l'étape 4 : le code suivant va dans votre fichier functions.php) :

 // Registering CPT function podcast_post_type() { //Setting up the user interface labels for podcasting CPT $labels = array( 'name' => _x( 'Podcasts', 'Post Type General Name' ), 'singular_name' => _x( 'Podcast', 'Post Type Singular Name' ), 'menu_name' => __( 'Podcasts' ), 'name_admin_bar' => __( 'Podcast' ), 'parent_item_colon' => __( 'Parent Podcast' ), 'all_items' => __( 'All Podcasts' ), 'add_new_item' => __( 'Post New Podcast' ), 'add_new' => __( 'New Podcast' ), 'new_item' => __( 'New Podcast' ), 'edit_item' => __( 'Edit Podcast' ), 'update_item' => __( 'Update Podcast' ), 'view_item' => __( 'View Podcast' ), 'search_items' => __( 'Search Podcasts' ), 'not_found' => __( 'No Podcasts found' ), 'not_found_in_trash' => __( 'No Podcasts found in trash' ) ); //Setting up other options for Podcasts CPT $args = array( 'label' => __( 'Podcasts' ), 'labels' => $labels, 'description' => __( 'Creating and managing podcasts' ), 'supports' => array( 'title', 'editor', 'excerpt', 'thumbnail', 'comments', 'revisions', 'custom-fields' ), //Initially supported features 'taxonomies' => array( 'podcast-category'), //If custom taxonomies exist, insert their names in the array 'hierarchical' => false, 'public' => true, 'show_ui' => true, 'show_in_menu' => true, 'menu_position' => 5, 'show_in_admin_bar' => true, 'show_in_nav_menus' => true, 'can_export' => true, 'has_archive' => true, 'exclude_from_search' => false, 'publicly_queryable' => true, ); //Registering custom post type register_post_type( 'podcasts', $args ); } // Hook into init action add_action( 'init', 'podcasts_post_type', 0 );

Cette portion de code peut sembler compliquée, mais ce n'est vraiment pas le cas. Vous insérez simplement un tas d'options pour le type de publication personnalisé et spécifiez ce qu'il prendra en charge. Notez que:

  • Le tableau $labels indique à WordPress comment afficher le type de publication dans le panneau d'administration.
  • Le tableau $args charge toute la configuration du tableau $labels et spécifie les options pour le type de publication personnalisé.
  • La magie se produit lorsque la fonction register_post_type( 'podcasts', $args ) est appelée dans la fonction principale podcasts_post_type() avec 2 arguments : le nom du type de message personnalisé et les options stockées dans $args (qui est un tableau associatif). Ensuite, nous accrochons simplement la fonction podcasts_post_type() à init et laissons WordPress la charger.

Lorsque vous cliquez sur Enregistrer et que vous téléchargez le fichier functions.php modifié dans le dossier de votre thème, vous devriez voir Podcasts (juste en dessous des messages, car nous avons défini le menu_position dans $args sur 5) sur votre panneau d'administration WordPress. Si vous le survolez, vous devriez voir des actions telles que "Tous les podcasts" et "Ajouter un nouveau podcast" - comme nous l'avons spécifié dans le tableau $labels. Comme nous n'avons inséré aucun champ personnalisé, lorsque vous essayez d'ajouter un nouveau podcast, tout sera comme si vous ajoutiez un message ordinaire.

Si vous avez remarqué, dans le tableau $args, nous avons ajouté "podcasts" en tant que taxonomie. Nous n'avons pas encore créé cette taxonomie, mais cela va finalement contenir nos catégories personnalisées comme les catégories de podcasts, les émissions de podcasts, etc.

En ce qui concerne les types de publication personnalisés WordPress, c'est vraiment tout ce dont vous avez besoin maintenant. Maintenant la question devient, comment afficher le contenu de votre CPT, comment créer des taxonomies (dans notre cas, la taxonomie du podcast), et comment créer des champs personnalisés ? Ne vous inquiétez pas, nous allons couvrir tout cela, étape par étape !