NB : Faire une sauvegarde de votre thème, de votre fichier et/ou votre base de données avant d’ajouter ces fonctions tutoriels.
Publié le : 03 janvier 2017 - Modifié le : 18 janvier 2022
Temps de lecture : 1 minute, 52 seconds - 106 mots
Partager la publication "Afficher la liste des catégories ( List custom posts types taxonomy )"
Afficher la liste des catégories ( List custom posts types taxonomy ) : Pour ce tutoriel il est important que votre custom post type soit doté d’un register_taxonomy WordPress. Voir ici
Voici donc une belle façon très simple d’afficher la liste des catégories d’un custom post type.
Par défaut nous pouvons demander d’afficher les catégories des articles avec le wp_list_categories.
<?php wp_list_categories(); ?>
Maintenant voici un exemple d’un register_taxonomy et la taxonomie qui doit être récupérée. Dans celui ci c’est collaborateurs_cat.
// Catégories custom post type /* Voici donc la taxonomie */ register_taxonomy( 'collaborateurs_cat', /* nom du custom post type */ array('collaborateurs'), array( 'hierarchical' => true, 'labels' => array( 'name' => __( 'Catégories', 'nom du theme' ), 'singular_name' => __( 'Catégories', 'nom du theme' ), 'search_items' => __( 'Rechercher une catégorie', 'nom du theme' ), 'all_items' => __( 'Toutes les catégories', 'nom du theme' ), 'parent_item' => __( 'Catégorie parente', 'nom du theme' ), 'parent_item_colon' => __( 'Catégorie parente :', 'nom du theme' ), 'edit_item' => __( 'Éditer une catégorie', 'nom du theme' ), 'update_item' => __( 'Sauvegarder une catégorie', 'nom du theme' ), 'add_new_item' => __( 'Ajouter une catégorie', 'nom du theme' ), 'new_item_name' => __( 'Nouvelle catégorie', 'nom du theme' ) ), 'show_admin_column' => true, 'show_ui' => true, 'query_var' => true, 'rewrite' => array( 'slug' => 'collaborateurs' ), ) );
Il va falloir le personnaliser pour afficher les catégories taxonomy du custom post type. La solution est d’aller exploiter sa taxonomie. Construisons le get_terms.
<?php // Récupérer la taxonomie dans une variable $taxonomy = 'collaborateurs_cat'; // Variable avec le get_terms $tax_terms = get_terms($taxonomy, array('hide_empty' => false)); ?>