Lister toutes les sous-catégories de la catégorie

15

Comment puis-je obtenir toutes les sous-catégories d'une certaine catégorie?

    
posée Fuxi 30.03.2011 - 15:56

1 réponse

25

Oui, vous pouvez utiliser get_categories () en utilisant l'attribut 'child_of' . Par exemple, toutes les sous-catégories de catégories ayant 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>';  
}

Toutes les catégories qui sont des descendants (c.-à-d. les enfants et les petits-enfants) seront ainsi répertoriées.

Si vous souhaitez afficher uniquement les catégories qui sont des descendants directs (par exemple, les enfants uniquement), vous pouvez 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>';  
}
    
réponse donnée Bainternet 30.03.2011 - 16:13

Lire d'autres questions sur les étiquettes