@WebforSelf

Как вывести название дочерней рубрики и ее записей в WP?

Друзья, возник вопрос

Есть рубрика (Товары) к которой относятся дочерние рубрики

Категория товаров 1
Категория товаров 2

Нужно вывести на страницу в формате

Категория товаров 1 Категория товаров 2
Товар 1 Товар 1-1
Товар 2 Товар 2-1
Товар 3 Товар 3-1

Хочу задействовать стандартную рубрику записей и работать с подкатегориями рубрики, то есть они будут динамичными, рубрики будут добавляться.

или же проще будет создать отдельную таксономию и уже работать с рубриками и записями без дочерних рубрик?
  • Вопрос задан
  • 150 просмотров
Решения вопроса 1
@WebforSelf Автор вопроса
Может кому пригодится

<?php
$parent_id = 5;
echo '<h2>Услуги</h2>';

# получаем дочерние рубрики
$sub_cats = get_categories( array(
	'child_of' => $parent_id,
	'hide_empty' => 0
) );
if( $sub_cats ){
	foreach( $sub_cats as $cat ){

		// Данные в объекте $cat

		// $cat->term_id
		// $cat->name (Рубрика 1)
		// $cat->slug (rubrika-1)
		// $cat->term_group (0)
		// $cat->term_taxonomy_id (4)
		// $cat->taxonomy (category)
		// $cat->description ()
		// $cat->parent (0)
		// $cat->count (14)
		// $cat->object_id (2743)
		// $cat->cat_ID (4)
		// $cat->category_count (14)
		// $cat->category_description ()
		// $cat->cat_name (Рубрика 1)
		// $cat->category_nicename (rubrika-1)
		// $cat->category_parent (0)

		echo '<h3>'. $cat->name .'</h3>';

		# получаем записи из рубрики
		$myposts = get_posts( array(
			'numberposts' => -1,
			'category'    => $cat->cat_ID,
			'orderby'     => 'post_date',
			'order'       => 'DESC',
		) );
		# выводим записи
		global $post;
		foreach($myposts as $post){
			setup_postdata($post);
			echo '<li><a href="'. get_permalink() .'">'. get_the_title() .'</a></li>';
		}
	}

	wp_reset_postdata(); // сбрасываем глобальную переменную пост
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы