Подкатегория списка на странице терминов таксономии


В WooCommerce я использую archive-product.php страница шаблона. Я хочу показать список подкатегорий из отображаемой категории.

Таким образом, по мере изменения пользователем категории список подрегионов будет меняться в соответствии.

Я могу получить подкатегории для определенной родительской категории, но я застрял, получая что-то вроде if($cat->category_parent == $this)

Код, который я использую для получения подкатегорий, перечисленных для идентификатора родителя=9

 <?php 
$args = array(
  'taxonomy'     => 'product_cat',
'orderby'      => 'name'
);
$all_categories = get_categories( $args );
foreach ($all_categories as $cat) {
if($cat->category_parent == 9) {
    $category_id = $cat->term_id;
    echo '<a href="'. get_term_link($cat->slug, 'product_cat') .'">'. $cat->name .'</a>'; 
    }      
}
?>

Но как мне сделать его динамичным, чтобы каждая категория будет показывать свои собственные подкатегории?

Author: Pieter Goosen, 2015-02-15

1 answers

Вы можете использовать get_term_children() вместо того, чтобы get_categories()

Вы можете попробовать что-то вроде этого

$term = get_queried_object();
$term_id = $term->term_id;
$taxonomy_name = $term->taxonomy;

$termchildren = get_term_children( $term_id, $taxonomy_name );

echo '<ul>';
foreach ( $termchildren as $child ) {
    $term = get_term_by( 'id', $child, $taxonomy_name );
    echo '<li><a href="' . get_term_link( $term, $taxonomy_name ) . '">' . $term->name . '</a></li>';
}
echo '</ul>';
 3
Author: Pieter Goosen, 2015-12-28 04:31:23