Отображать количество сообщений внутри пользовательского термина таксономии

Итак, у меня есть эта страница, и в настоящее время у меня есть список, выводящий каждый термин, где сообщение содержится в определенном термине.

Для этого у меня есть пользовательский тип сообщений под названием «эпизоды».

У меня есть пользовательская таксономия под названием «episode_categories».

и внутри этого у меня есть различные термины, такие как виртуальная реальность, смешанные боевые искусства и так далее.

Что я хочу сделать, так это показать количество каждого термина, в котором есть X сообщений.

В настоящее время у меня есть это как мой код.

<div class="placeholder-main relative py-64 md:py-56 min-h-screen flex">
    <div class="main my-auto w-full flex:none">
        <div class="section">
            <div class="container">

                <div class="categories flex flex-wrap xs:block">
                    <?php
                    $args = array(
                        'type'                     => 'episodes',
                        'post_status'              => 'publish',
                        'child_of'                 => 0,
                        'parent'                   => '',
                        'orderby'                  => 'name',
                        'order'                    => 'ASC',
                        'hide_empty'               => 1,
                        'hierarchical'             => 1,
                        'taxonomy'                 => 'episode_categories',
                        'pad_counts'               => false
                    );

                    $categories = get_categories($args);
                    ?>
                    <?php foreach ($categories as $category) : ?>
                        <div class="categories__item w-1/2 xs:w-full pr-5 xs:p-0 mt-10 xs:mt-6">
                            <div class="article text-2xl sm:text-xl xxs:text-base">
                                <h2 class="text-4xl sm:text-28px xxs:text-xl font-bold leading-none"><a href="<?php echo get_term_link($category); ?>" class="transition ease-out duration-300 hover:opacity-50"><?php echo $category->name; ?></a></h2>
                                <p>There are
                                    <strong>
                                        0
                                    </strong> podcasts in this category
                                </p>
                            </div>
                        </div>
                    <?php endforeach; ?>
                </div>
            </div>
        </div>
    </div>
</div>

введите здесь описание изображения


person Glen Wheeler    schedule 22.06.2020    source источник


Ответы (1)


По умолчанию функция get_categories возвращает количество сообщений, с которыми связана каждая категория. Вы можете получить доступ к этому значению через category_count. Вот код:

<p>
    <strong>
        <?= $category->category_count; ?>
    </strong>
</p>

Проверено и работает

person Mathias Nicod    schedule 22.06.2020
comment
Спасибо за ответ Матиас. Это здорово, большое спасибо, однако это все еще не кажется правильным. К моей бизнес-категории, например, прикреплено 2 эпизода, но с вашим кодом для бизнеса по-прежнему считается 1 эпизод. - person Glen Wheeler; 23.06.2020
comment
Возможно, вам нужно сбросить постданные второго запроса. Я обновил свой пост, скажите, работает ли он - person Mathias Nicod; 24.06.2020
comment
Привет, Матиас, не могли бы вы написать пример, не на 100%, я помещаю код в нужное место, но я все равно получаю те же результаты даже при сбросе. - person Glen Wheeler; 24.06.2020
comment
Привет, Глен, я нашел лучшее решение для его достижения. Я проверил это, и оно хорошо работает для меня, скажите, работает ли оно и для вас! - person Mathias Nicod; 24.06.2020
comment
Боже мой, как безумно, я везде искал Stack Overflow, форумы, и они пытались найти всевозможные решения с помощью WP Query, длинного кода, и кажется, что вы можете сделать это менее чем за 30 символов! Это работает и для меня, Матиас. Большое спасибо, что быстро вернулись ко мне. - person Glen Wheeler; 24.06.2020