У меня есть собственный тип записи на моем сайте 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()
и все варианты, о которых я могу думать, не ходя кругами, но я уверен, что где-то пропустил правильную комбинацию.
Задача ещё не решена.
Других решений пока нет …