Что не так с использованием этой функции WordPress: wp_list_categories()
Не можете увидеть, где я иду с этим, любая помощь, пожалуйста?
$current_term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) );
//then set the args for wp_list_categories
$args = array(
'child_of' => $current_term->term_id,
'taxonomy' => $current_term->taxonomy,
'hide_empty' => 0,
'hierarchical' => true,
'depth' => 1,
'title_li' => __(''),
'echo' => '0'
);
$terms_list = wp_list_categories( $args);
if( $terms_list ){
?>
<div id="terms_list">
<ol>
<?php echo $terms_list; ?>
</ol>
</div>
<?php
};
// this line is just here for debug to confirm that we have the right item - it is not a part of the design or normal functionality
echo '<h1>terms_id: ' . $current_term->term_id . ' name: ' . $current_term->name . ' and: ' . $current_term->taxonomy . '</h1>';
?>
поэтому функция, вызывающая проблему - это wp_list_categories(), и она вообще ничего не возвращает. Я проверил, что термин правильный, и у него есть посты, и у него есть дети, у которых тоже есть посты. Энди, помощь оценена!
1 ответ
$current_term->term_id
имеет тип строки. child_of
параметр ожидает целое число
Попробуйте сделать это:
$args = array(
'child_of' => (int) $current_term->term_id,
'taxonomy' => $current_term->taxonomy,
'hide_empty' => 0,
'hierarchical' => true,
'depth' => 1,
'title_li' => __(''),
'echo' => '0'
);