Intereting Posts
Переместите боковую панель виджета в Внешний вид-> Виджеты Типы пользовательских сообщений запроса menu_order Как есть 2 меню, которые могут быть достигнуты с другим меню, таким как вкладки Показывать только определенные категории в постоянных ссылках для категорий пользовательских типов сообщений. Переписать СРТ в постоянные ссылки на субдомены Удалить разделы Custuomize Как получить доступ к глобальной переменной $ wp_meta_boxes на интерфейсе? Многостраничный поиск товаров WordPress Использование правил в сообщениях Форма обязательного соглашения для доступа к другой странице? Плагин для ввода китайских символов в сообщениях или страницах Неустранимая ошибка после добавления nav_walker Как создать профиль пользовательского интерфейса с дружественной постоянной ссылкой и триггером 404 Отправить сообщение по тегу Порядок сортировки запросов Wp

Цикл через определенную родительскую категорию

У меня есть список регионов (NA, EUW и т. Д.), Заданных как подкатегории, а родительский – это regions . Мне нужно перечислить эти регионы для моих типов сообщений.

 <?php $posts = get_posts(array( 'post_type' => 'packages', 'category_name' => 'NA', 'meta_key' => 'package_order_id', 'orderby' => 'meta_value_num', 'order' => 'ASC' )); if ($posts) { foreach($posts as $post) { setup_postdata($post); ?> 

..

Где category_name' => 'NA' , вместо этого будет category_name' => <?php regions[i] ?>, . Это будет в пределах цикла категорий.

Моя попытка, найденная в другом ответе, прошла только по всем категориям.

 <?php $categories = get_categories( array( 'regions' => $cat->cat_ID ) ); foreach ($categories as $c) { var_dump($c); } ?> 

Но мне нужно только в петле в родительской категории regions для имен дочерних категорий. Как я могу это сделать?

Вам нужно получить идентификатор категории regions а затем использовать get_categories() чтобы получить все категории, у которых есть ID в качестве родителя:

 $parent = get_category_by_slug( 'regions' ); $regions = get_categories( array( 'parent' => $parent->term_id, ) ); foreach ( $regions as $region ) { // Do stuff. } 

Рассматривали ли вы просто создание пользовательской таксономии «Регионы» для вашего типа сообщений? Это немного необычно, когда категории работают так. Это слишком хрупко, поскольку это зависит от категории, имеющей определенное имя.

Если вы сделали это и задали имя таксономии как region , вы пропустили бы их так:

 $regions = get_terms( array( 'taxonomy' => 'region' ) ); foreach ( $regions as $region ) { // Do stuff. }