WordPress Custom Post Type — список дочерних страниц

У меня есть собственный тип записи на моем сайте WordPress для портфолио проектов. Структура должна иметь индекс портфолио, в котором перечислены категории портфолио, а затем дочерние страницы для отдельных проектов.

В индексе портфолио я пытаюсь показать каждую категорию портфолио (всего их 4) с названием и количеством проектов (дочерних страниц) в нем. например Фотография — 16 проектов.

Часть, на которой я застрял, — это подсчет количества дочерних страниц для каждой родительской категории при циклическом цикле. У меня стандартный цикл работает правильно, как это:

// The Query
$the_query = new WP_Query(array(
// Query only the custom post type ja_portfolio
'post_type' => 'ja_portfolio',
// Display only top-level parent pages (e.g. project categories)
'post_parent' => 0,
'orderby' => 'menu_order',
'order' => 'ASC'
));
// The Loop
if ( $the_query->have_posts() ) {
while ( $the_query->have_posts() ) {
$the_query->the_post();
// Other parts of the loop functioning fine...

// Get number of child pages *struggling here*
$children = get_pages('child_of='.$the_query->the_post());
if( count( $children ) != 0 ){
echo count($children);
};

// Rest of code functioning fine here...
} else {
// no posts found
// Restore original Post Data
wp_reset_postdata();
}

Я попробовал то, что кажется бесконечным количеством возможностей, и чувствую, что я рядом. Самое близкое, что я могу получить, — это отображать одно и то же число в каждой категории, которое, как представляется, подсчитывает все дочерние страницы и все категории, а не только количество для конкретной запрашиваемой категории.

Я также попробовал все виды вариаций, используя the_post() а также theID() или внутри друг друга и многих других. Даже пытался поменяться get_pages() за get_post() и все варианты, о которых я могу думать, не ходя кругами, но я уверен, что где-то пропустил правильную комбинацию.

0

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]