Intereting Posts
Как использовать специальное настраиваемое поле в настраиваемом типе сообщений как slug Значения, выбранные из выпадающего списка, сохраняются только в качестве первого слова входного значения Расширение API-интерфейса WordPress с помощью специального интерфейса Как обновить мета-поле пользователя, отличное от профиля? Использование Javascript для задания страницы перенаправления в форме контакта 7 WordPress meta_query не работает Показывать комментарии только к той же пользовательской роли пользователя Как показать содержимое данных с одной страницы, которая является пользовательским типом сообщения? Использование? P = $ post_ID вместо permalink в результате AJAX Показывать последние продукты сначала, но «продано последним» в запросе Перестановка ссылки «Reply» в комментариях когда я получаю данные из удаленной базы данных mysql в wordpress, встроенной в функцию wordpress, не работает? Пользовательская конечная точка и X-WP-TotalPages (заголовки) Функция wp_trash_post применяется только к сообщениям, а не к страницам! Почему результаты поиска неверны в форме поисковых сообщений?

Печать прямых потомков категории с WP_Query

Поэтому мне трудно печатать только прямые дети категории на странице. Вот мой код:

$category_id = get_cat_ID('destinations'); $args = array('child_of' => $category_id); $categories = get_categories($args); $args = array ( 'category__and' => $categories->$cat_ID ); $recent_posts = new WP_Query($args); if ($recent_posts->have_posts()) : while ($recent_posts->have_posts()) : $recent_posts->the_post(); 

Этот код печатает каждую категорию независимо от того, кто является родителем. Если я изменю это:

$ recent_posts = новый WP_Query ('cat = 43'); Он печатает правильную категорию, но также все ее дети и дети детей (очевидно). Я просто хочу, чтобы непосредственно связанные дети были напечатаны. Я пошел вперед и повторил сериализацию ($ categories), которая вернула правильный массив. Однако, когда я сериализую ($ args) ПОСЛЕ 2-й декларации, это дает мне:

 a:1:{s:13:"category__and";N;} 

Это определенно странно. Почему на Земле он возвращает «N» для $ categories -> $ cat_ID? Я пытался сделать это весь день и не увенчался успехом. Я также пытался найти другой способ сделать то, что хочу, но ничего не получилось.

Есть идеи?

Solutions Collecting From Web of "Печать прямых потомков категории с WP_Query"

Из Кодекса:

  ребенок 
     (целое число) Отобразить все категории, которые являются потомками (т.е. детьми и внуками) категории, идентифицированной ее идентификатором.  Для этого параметра нет значения по умолчанию.  Если параметр используется, параметр hide_empty имеет значение false. 

А также…

 родитель  
     (целое) Отображать только те категории, которые являются прямыми потомками (то есть только для детей) категории, идентифицируемой ее идентификатором.  Это НЕ работает как параметр «child_of».  Для этого параметра нет значения по умолчанию.  [В 2.8.4]

Итак, во-первых, вы используете неправильный аргумент, если хотите только немедленные декодеры. Тебе нужно:

 $args = array('parent' => $category_id); 

Во-вторых, get_categories даст вам массив объектов, поэтому вам понадобится что-то подобное для извлечения идентификаторов.

 $cats = wp_list_pluck($categories,'cat_ID'); $args = array ( 'category__and' => $cats ); 

Даю вам:

 $category_id = get_cat_ID('destinations'); $args = array('parent' => $category_id); $categories = get_categories($args); $cats = wp_list_pluck($categories,'cat_ID'); $args = array ( 'category__and' => $cats ); $recent_posts = new WP_Query($args);