WordPress — получить количество записей в категории

Так сказать, заметка на память, может кому-то пригодится. Итак, узнать сколько постов содержит категория, можно вот так:

<?php echo get_category(ID категории)->category_count; ?>

Функция get_category вообще очень полезная. Достаточно передать в нее ID интересующей нас рубрики, и она выдаст массу интересной информации. Например:

  • term_id – ID категории,
  • name – название категории,
  • slug – ярлык категории,
  • description – описание категории,
  • parent – ID родительской категории,
  • count – количество постов в категории (это мы уже знаем),
  • term_group – значение колонки term_group в БД,
  • term_taxonomy_id – ID таксономии, у категорий он равен 1,
  • taxonomy – название таксономии, для категорий – category

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

И еще — у функции есть второй параметр, который определяет в каком виде она вернет результат. Мы можем указать либо ассоциативный массив ARRAY_A, либо индексированный массив ARRAY_N. Таким образом, вызов функции будет выглядеть так:

echo get_category(ID категории,'ARRAY_A');

для ассоциативного массива или

echo get_category(ID категории,'ARRAY_N');

для индексированного.

 

 

Метки: , ,

Похожие записи
Запись опубликована в рубрике CMS, PHP, WordPress, Программирование с метками , , . Добавьте в закладки постоянную ссылку.

7 комментариев: WordPress — получить количество записей в категории

  1. Андрей говорит:

    может знаете, как можно узнать количество записей с определенной меткой?

  2. Александр говорит:

    Как сразу вывести количество записей из нескольких рубрик?

    • kumatoz говорит:

      Банально просуммировать результаты :) Или так (но не проверял)
      < ?
      echo count(query_posts('cat=2,3,7'));
      ?>
      Должно получиться кол-во постов в категориях 2, 3 и 7

  3. adward говорит:

    У меня вот такой вопрос. Мне нужно вывести посты определённого формата. Скажем, только цитаты. Я делаю так:

    $args = array(
    'tax_query' => array(
    array(
    'taxonomy' => 'post_format',
    'field' => 'slug',
    'terms' => 'post-format-quote'
    )
    )
    );
    query_posts( $args );

    теперь мне нужно узнать количество постов, которое мне вернул query_posts
    Как узнать количество, не подскажете?

    • kumatoz говорит:

      Попробуйте сделать так (но не уверен, проверить сейчас не могу):
      В последней строке query_posts( $args ) замените на $result = query_posts( $args );
      А количество постов получить вот так $num_posts = count($result). Навскидку это должно работать.

  4. Zakhar говорит:

    Здравствуйте, а не подскажите как вывести количество рубрик на сайте, а еще лучше вывести сколько всего рубрик и постов на сайте?

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>