CPT (Custom Post Type)


💡

Le CPT, ou Custom Post Type, est une fonctionnalité avancée de WordPress qui permet de créer des types de contenu personnalisés, en plus des types de contenu par défaut comme les articles et les pages. Cette option est particulièrement utile lorsqu’un site WordPress a besoin de structurer des contenus variés, comme un portfolio, des témoignages, des produits, des projets ou des événements

Depuis la version 3 de WordPress, les Custom Post Types ont transformé WordPress en un véritable CMS complet, permettant de créer un site totalement personnalisé et évolutif.


Pourquoi utiliser un Custom Post Type ?


Les CPT permettent de :


  • – Séparer les types de contenu pour une meilleure organisation
  • – Créer des interfaces d’édition spécifiques pour différents contenus
  • – Faciliter la gestion et l’affichage du contenu sur le site
  • – Améliorer l’expérience utilisateur côté back-office
  • – Optimiser le code et la structure du site (notamment pour les gros projets)


Par exemple, sur un site WordPress d’agence, un CPT peut être utilisé pour présenter :

  • – Un portfolio de réalisations
  • – Des offres d’emploi
  • – Des témoignages clients
  • – Des études de cas
  • – Des produits e-commerce (comme le fait WooCommerce)


Créer un Custom Post Type dans WordPress


Il existe deux façons principales de créer un CPT :


1. Via le code PHP


Ajout dans le fichier functions.php de votre thème ou via un plugin personnalisé :

function create_custom_post_type() {
register_post_type('portfolio',
array(
'label' => 'Portfolio',
'public' => true, 'has_archive' => true,
'supports' => array('title', 'editor', 'thumbnail'),
'menu_position' => 5, 'menu_icon' => 'dashicons-portfolio'
)
);
}
add_action('init', 'create_custom_post_type');


🚨 Paramètres clés :


  • – label : nom affiché dans le menu WordPress
  • – public : visibilité du contenu
  • – supports : champs activés (titre, image, éditeur…)
  • – has_archive : active les pages d’archive pour ce CPT


2. Via un plugin


  • Custom Post Type UI (gratuit, très utilisé)
  • Pods
  • – Toolset Types
  • – Advanced Custom Fields (en complément pour ajouter des champs personnalisés)


Ces plugins offrent une interface utilisateur simple pour créer, configurer et gérer vos CPT sans coder.


Ajouter des taxonomies personnalisées


Les CPT peuvent être enrichis avec des taxonomies personnalisées (comme les catégories ou étiquettes) pour classer vos contenus.


Exemple :


  • – Taxonomie « Type de projet » pour un CPT « Portfolio »
  • – Taxonomie « Domaine d’expertise » pour un CPT « Études de cas »


Ces taxonomies peuvent être créées via le code PHP ou les mêmes plugins que pour les CPT.


Affichage d’un CPT sur votre site


L’affichage d’un Custom Post Type nécessite :


  • – Une page d’archive (ex : /portfolio)
  • – Une boucle WordPress personnalisée (WP_Query)
  • – Des modèles de pages spécifiques (single-portfolio.php, archive-portfolio.php)
  • – Parfois un peu de CSS ou de JavaScript pour le style ou l’interaction


Avec Gutenberg, Elementor ou Divi, l’intégration des CPT devient encore plus visuelle et intuitive.


Avantages d’utiliser un CPT


  • – Structure claire des contenus personnalisés
  • – Administration plus intuitive pour le client
  • – Meilleure gestion de grands volumes de contenu
  • – Possibilité de créer des interfaces évolutives
  • – -Intégration fluide avec des plugins comme ACF, WooCommerce, Yoast SEO


Exemple concret


Contexte : un site WordPress pour une agence de design
Besoin : créer un portfolio de projets avec des filtres par type
Solution : création d’un CPT « Portfolio » + taxonomies personnalisées
Résultat : interface claire, gestion intuitive, SEO optimisé et design sur mesure