web-dev-qa-db-fra.com

Comment répertorier les catégories enfants dans un modèle de catégorie personnalisé?

J'essaie de créer un modèle de catégorie personnalisé qui affichera une liste des catégories enfants de la catégorie actuelle. Outre le nom et le lien vers la catégorie, je souhaite également ajouter une vignette et la description de la catégorie. J'ai essayé le code suivant mais il n'a rien retourné:

<?php 

$catid = get_category(get_query_var( 'cat' ));

$termchildren = get_term_children( $catid, 'category' );

echo '<ul>';

foreach( $termchildren as $cat ) {

$term = get_term_by( 'id', '$cat', 'category' );

echo '<li>'.$term->name.'</li>';

}

?>

J'ai omis les autres parties de la liste html à ce stade, car j'essaie simplement de le faire fonctionner et les ajouterai plus tard.

1
jrcollins

Ce morceau de code vous renverra les catégories enfants d’un parent

$cat = get_category( get_query_var( 'cat' ) );
$cat_id = $cat->cat_ID;
$child_categories=get_categories(
    array( 'parent' => $cat_id )
);

Il suffit de passer l’identifiant de la catégorie à la variable $cat_id des enfants que vous souhaitez. Après cela, vous pouvez concevoir ou imprimer ceux-ci comme vous le souhaitez. Exemple-

foreach ( $child_categories as $child ) {
    // Here I'm showing as a list...
    echo '<li>'.$child ->cat_name.'</li>';
}

J'espère que ça va aider.

1
CodeMascot