Lister toutes les sous-catégories de la catégorie
-
-
Commeexpliquéici,vouspouvez également utiliserget_terms (): https://stackoverflow.com/questions/22443352/how-to-get-sub-categories-by-parent-category-id-in-wordpressAs explained here, you can alternatively use get_terms(): https://stackoverflow.com/questions/22443352/how-to-get-sub-categories-by-parent-category-id-in-wordpress
- 0
- 2019-08-07
- retroriff
-
1 réponses
- votes
-
- 2011-03-30
Oui,vouspouvez utiliser get_categories () en utilisant l'attribut
'child_of'
. Parexemple,toutes les sous-catégories de catégorie avec l'ID 17:$args = array('child_of' => 17); $categories = get_categories( $args ); foreach($categories as $category) { echo '<p>Category: <a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a> </p> '; echo '<p> Description:'. $category->description . '</p>'; echo '<p> Post Count: '. $category->count . '</p>'; }
Cela obtiendratoutes les catégories qui sont des descendants (c'est-à-dire lesenfantset petits-enfants).
Si vous souhaitez afficher uniquement les catégories qui sont des descendants directs (c'est-à-dire desenfants uniquement),vouspouvez utiliser l'attribut
'parent'
.$args = array('parent' => 17); $categories = get_categories( $args ); foreach($categories as $category) { echo '<p>Category: <a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a> </p> '; echo '<p> Description:'. $category->description . '</p>'; echo '<p> Post Count: '. $category->count . '</p>'; }
Yes, you can use get_categories() using
'child_of'
attribute. For example all sub categories of category with the ID of 17:$args = array('child_of' => 17); $categories = get_categories( $args ); foreach($categories as $category) { echo '<p>Category: <a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a> </p> '; echo '<p> Description:'. $category->description . '</p>'; echo '<p> Post Count: '. $category->count . '</p>'; }
This will get all categories that are descendants (i.e. children & grandchildren).
If you want to display only categories that are direct descendants (i.e. children only) you can use
'parent'
attribute.$args = array('parent' => 17); $categories = get_categories( $args ); foreach($categories as $category) { echo '<p>Category: <a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a> </p> '; echo '<p> Description:'. $category->description . '</p>'; echo '<p> Post Count: '. $category->count . '</p>'; }
-
** Juste une suggestion: ** Avec lapopularité destypes depublicationset destaxonomiespersonnalisés,je pense qu'il seraitpréférable de suggérer `get_terms`,car cela aide àfamiliariser les utilisateurs avec lesfonctions de récupération determesgénéraux,où lesfonctions de catégorie sont quelquepeu spécifiquesà lataxonomieintégrée (maispas danstous les cas).Vousn'êtespas obligé d'être d'accordbien sûr,c'estjuste une suggestion ...;)**Just a suggestion:** With the popularity of custom post types and taxonomies, i feel it would be better to be suggesting `get_terms`, because this helps familiarise users with general term fetching functions, where as the category functions are somewhat specific to the built-in taxonomy(though not in all cases). You don't have to agree of course, it's just a suggestion... ;)
- 6
- 2011-03-30
- t31os
-
Je suis d'accord que [get_terms ()] (https://developer.wordpress.org/reference/functions/get_terms/)pourrait êtremieux.I agree that [get_terms()](https://developer.wordpress.org/reference/functions/get_terms/) might be better.
- 2
- 2016-04-04
- Django Reinhardt
-
@t31os -pourriez-vousposter une réponseen utilisant `get_terms` s'il vousplaît?@t31os - could you post an answer using `get_terms` please?
- 0
- 2018-03-30
- vsync
-
veuilleznoter que,par défaut,celane vous obtiendrapas de catégories auxquelles aucunmessagen'est associé.utilisez `hide_empty=>false`pour obtenirtoutes les catégories (selon la version récente de wordpress)please note, by default, this will not get you categories that has no post associated with them. use `hide_empty => false` to get all categories (as per the recent version of wordpress)
- 1
- 2020-02-04
- swadhwa
Commentpuis-je obtenirtoutes les sous-catégories d'une certaine catégorie?