get_term_children не возвращает массив дочерних терминов

Я пытаюсь получить термин «дети», а затем проверить, существуют ли они для их отображения. Но я не получаю идентификаторы в ответ на команду get_term_children. Это код:

$children = get_term_children($term->term_id, locations); echo $children; 

$ term уже определен и хорошо выдается, таксономия «местоположения» существует. Код возвращает мне только слово «Array», список дочерних терминов не отображается.

У меня есть аналогичный код на моих страницах архива сообщений, и он хорошо работает, возвращая мне дочерние категории в формате n / n / n / n / n:

  $children = get_category_children($this_category->cat_ID); echo $children; 

Что случилось с первым кодом? Он должен работать так же хорошо, как и второй.

Solutions Collecting From Web of "get_term_children не возвращает массив дочерних терминов"

Сначала попробуйте передать таксономию как строку:

 $children = get_term_children($term->term_id, 'locations'); 

Функция get_category_children возвращает строку в качестве возврата, поэтому вы можете просто отследить ее. функция get_term_children, однако, возвращает массив. Чтобы увидеть содержимое массива, попробуйте

 print_r( $children ); 

вместо эха.

Последнее, что нужно иметь в виду, состоит в том, что таксономия не должна быть иерархической – например, встроенные теги. Убедитесь, что ваши «местоположения» организованы иерархически, иначе get_term_children не будет работать для вас в этом случае.