Intereting Posts
плагин не подключается к моему пользовательскому подключению Проблема с свойством объекта $ post_id Встроенные твиты обернуты тегами <p> и не загружаются Как изменить содержимое сообщения перед записью в базу данных? Как создать панель настроек под плагином Сортировка элементов экрана редактора Как я могу просмотреть / зарегистрировать все запросы, поступающие из регистрационной формы (а не из пользовательского интерфейса)? Открыть соединение между страницей для обратного вызова Можно ли встраивать контент в WordPress? Пользовательская функция wp_get_archives отключена с момента обновления до WP 3.7.1 Штрих-коды короткой темы в WordPress не работают WordPress скрывает поля имени пользователя и пароля на странице входа Разработка пользовательских плагинов позволяет получить контекст справки для работы в WP 4.3 Случайные символы в конце каждого URL-адреса изображения в сообщении get_results с использованием wpdb

Перечислите только детей первого уровня с конкретным сроком таксономии

У меня есть сайт, настроенный на следующее:

  • Тип сообщения: продукт
  • Таксономия: product_cat
  • Таксономия Slug: hydro

Термин «гидро» имеет несколько непосредственных условий для ребенка и несколько внуков.

Мне нужно написать цикл, в котором будут отображаться только дети первого уровня пользовательского таксономического термина «гидро» (т.е. – пропустить условия внука), а также постоянную ссылку на их соответствующие страницы архива таксономии.

Я пытался работать с get_terms() в различных воплощениях, но я просто не могу понять это правильно.

Любая помощь приветствуется. Благодаря!

Solutions Collecting From Web of "Перечислите только детей первого уровня с конкретным сроком таксономии"

Прежде всего вам нужен термин id of hydro term, вы можете получить его с помощью get_term_by

 $hydro = get_term_by('slug', 'hydro', 'product_cat'); 

После этого вы можете использовать термин id как 'parent' аргумент для get_terms

 $hydro_children = get_terms( 'product_cat', array( 'parent' => $hydro->term_id ) ); 

Теперь вы можете отобразить список этих детей:

 if ( ! empty($hydro_children) ) { echo '<ul>'; foreach( $hydro_children as $hydro_child ) { echo '<li><a href="' . get_term_link($hydro_child, 'product_cat') . '">'; echo $hydro_child->name . '</a></li>'; } echo '</ul>'; } 

И / или запустите почтовый запрос для сообщений с прикрепленными параметрами $hydro_children , и если вы хотите, вы можете пропустить сообщения, содержащие только детей из $hydro_children (grand children of 'hydro') благодаря аргументу 'include_children' налогового запроса:

 $args = array( 'post_type' => 'product', // I guess 'tax_query' => array( array( 'taxonomy' => 'product_cat', 'field' => 'id', 'terms' => wp_list_pluck($hydro_children, 'term_id'), 'include_children' => false ) ) ); $query = new WP_Query( $args );