Existe-t-il un moyen facile d'obtenir chaque taxonomie enregistrée et pour chaque taxonomie enregistrée, d'obtenir tous les termes de cette taxonomie et, pour chaque terme, d'obtenir le décompte des publications, sans récupérer réellement toutes les données de publication?
Je suppose que c'est certainement possible. Je suppose également que cela nécessite une requête de base de données très longue utilisant $wpdb
.
Vous pouvez le faire avec juste get_terms
- cela vous permet d'extraire tout (ou certains) des termes d'une (ou plusieurs) taxonomie.
Par défaut, les termes "vides" sont exclus, vous devez donc définir les arguments de manière appropriée.
//Array of taxonomies to get terms for
$taxonomies = array('category','post_tags','my-tax');
//Set arguments - don't 'hide' empty terms.
$args = array(
'hide_empty' => 0
);
$terms = get_terms( $taxonomies, $args);
$empty_terms=array();
foreach( $terms as $term ){
if( 0 == $term->count )
$empty_terms[] = $term;
}
//$empty_terms contains terms which are empty.
Si vous souhaitez obtenir un tableau de taxonomies enregistrées par programme, vous pouvez utiliser get_taxonomies()
<?php
// your taxonomy name
$tax = 'cat';
// get the terms of taxonomy
$terms = get_terms( $tax, $args = array(
'hide_empty' => false, // do not hide empty terms
));
// loop through all terms
foreach( $terms as $term ) {
// Get the term link
$term_link = get_term_link( $term );
if( $term->count > 0 )
// display link to term archive
echo '<a href="' . esc_url( $term_link ) . '">' . $term->name .'</a>';
elseif( $term->count !== 0 )
// display name
echo '' . $term->name .'';
}
?>