web-dev-qa-db-fra.com

Afficher uniquement le premier niveau d'enfants de la catégorie actuelle?

Je souhaite afficher uniquement le premier niveau de sous-catégories sur la page de catégorie actuelle (le cas échéant).

J'ai essayé ce code:

<?php
        $args=array(
            'child_of' => $cat-id,
            'hide_empty' => 0,
            'orderby' => 'name',
            'order' => 'ASC',
            'depth' => '1' //NOT WORKING

        );
        $categories=get_categories($args);
        foreach($categories as $category) {
            echo '<a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a>';  }
        ?>

Mais, il montre tous les enfants et les enfants (petits-enfants). J'ai essayé avec "'profondeur' => '1'" mais c'est ignoré.

Comment afficher uniquement le premier niveau d'enfants (s'il en existe) sur la page de catégorie?

1
Advanced SEO

Vous utilisez la fonction get_categories () et cette fonction n’a pas l’argument ' depth '. De plus, php ne supporte pas la variable $cat-id. ce serait $cat_id.

Alors essayez ce genre de code:

$cat_id = get_query_var('cat');
$args=array(
            'parent' => $cat_id,
            'hide_empty' => 0,
            'orderby' => 'name',
            'order' => 'ASC'
        );
3
Chinmoy Kumar Paul