web-dev-qa-db-fra.com

Liste Catégorie 'child_of' par slug plutôt que par ID

Je veux lister les catégories appartenant à un parent. Le problème est que l'utilisation d'identifiants de catégorie n'est pas utile et rend les choses plus difficiles à comprendre.

Existe-t-il un moyen plus simple de répertorier les catégories appartenant à un parent, similaire au moyen fourni par défaut dans le codec WP?

<?php wp_list_categories('child_of=8'); ?> //what category is '8' ?!

<?php wp_list_categories('child_of=clients'); ?> //much nicer, but doesn't work

Je préférerais éviter d'utiliser une autre requête dans la boucle, mais pour que les autres développeurs aient un sens, je pourrais le faire.

4
danixd

Vous pouvez facilement obtenir l’identité de slug:

$category = get_category_by_slug( 'clients' );
wp_list_categories('child_of='.$category->term_id);
5
Rarst

Voulez-vous que tous les enfants appartiennent à une catégorie donnée, car c’est essentiellement le rôle du paramètre child_of, qui permet d’obtenir tous les descendants d’un terme (catégorie).

Si vous souhaitez uniquement les termes ayant un parent direct particulier, vous devriez plutôt utiliser parent.

En ce qui concerne l'utilisation d'un identifiant, cela devrait fonctionner.

<?php
// Get ID for the named category
$cat_term_id = get_cat_ID( 'my-cat' );

wp_list_categories("parent=$cat_term_id");
//wp_list_categories("child_of=$cat_term_id");
?>

get_cat_ID docs.


J'espère que cela pourra aider..

3
t31os