получить условия - только высший уровень
Я пытаюсь получить только термин верхнего уровня:
$cat_args = array(
'parent ' => 0,
'number' => 10,
'hide_empty' => false,
);
$categories = get_terms( 'question_category' , $cat_args);
Но этот запрос также возвращает все дочерние термины, я перепробовал все, но он тоже всегда получает дочерние термины.
Я пытаюсь с последних 5 часов и не могу найти, что не так в моем коде, это ошибка WP или в моем коде что-то не так?
Спасибо за помощь.
1 answers
Ваш код верен, ну, почти верен. На первый взгляд, должен признаться, я тоже это пропустил.
В вашем коде есть две синтаксические ошибки. Если присмотреться, 'parent '
и 'parent'
- это не одно и то же. Вы не должны оставлять пробелы между одинарными кавычками ('
) и аргументами.
Кроме того, вам не нужно добавлять ,
после вашего последнего аргумента.
Это должно сработать
$cat_args = array(
'parent' => 0,
'number' => 10,
'hide_empty' => false
);
РЕДАКТИРОВАТЬ 15-06-2016
Начиная с WordPress 4.5, синтаксис изменился на get_terms()
. Параметр taxonomy
теперь включен в массив или аргументы, поэтому новое использование будет выглядеть следующим образом
$args = [
'taxonomy' => 'my_tax',
'parent' => 0,
'number' => 10,
'hide_empty' => false
];
$terms = get_terms( $args );