Отправка сообщения






Добро пожаловать!

Количество записей в категории – WordPress

WordPress в сети интернет довольно часто используется для ведения блога, и не только. Его мощь, и в тоже время простота в использовании завоевала большую популярность среди блогеров, которые предпочли использовать в качестве платформы этот движок. Современные блоги содержащие множество записей разделяют посты по рубрикам, тем самым создавая некие тематические разделы. Всё это в целом направлено придать удобство при сёрфинге на сайте. При показе рубрики иногда неплохо выводить счетчик, который информирует о количестве записей в какой-либо конкретной категории. Либо показывать в навигационном меню, в виде небольших цифр возле названия рубрики.

В WordPress есть встроенная функция, с помощью которого, зная id раздела, мы можем получить количество опубликованных записей в рубрике. Функция называется get_category(), при успешном обращении к ней она возвращает множество полезной информации, одной из которых и является счетчик количества записей.

Вызов функции:

<?php echo get_category($ID,$resType); ?>

$ID – id категории;
$resType – в качестве значения переменной передается параметр, который определяет, в каком виде будет возвращен результат. Возможные значения данного параметра:
ARRAY_A – ассоциативный массив;
ARRAY_N – индексированный массив;

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

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

<?php echo get_category($ID)->category_count; ?>

Таким образом, мы можем обратиться к каждому параметру (возможные параметры описаны выше), получая в качестве возвращаемого результата его значение. Функция довольно удобна в использовании, плюс, она может оказаться в некоторых случаях весьма полезной.

Добавил: htmaker, 14.10.2013 г.
 
плохослабосойдетхорошоотлично (3 голосов, средний: 5,00 из 5)
Загрузка...

Комментарии

  1. Ivan пишет:

    Привет. А как будет выглядеть
    category_count; ?>
    если имеется ни одна категория, а штук 5 разных? Я их получаю из произвольного поля путем
    ID, ‘имя_поля’, true); ?>
    Т.е. как посчитать в сумме количество постов в нескольких категориях?
    Спасибо.

  2. Ivan пишет:

    Сорри, обрезало чего-то функции — напишу без треугольных скобок:
    echo get_category($ID)->category_count; — Ваша
    $key_sec = get_post_meta($post->ID, ‘имя_поля’, true); — моя

    1. htmaker пишет:

      Если я правильно понял результат $key_sec у вас получается в виде массива, который содержит ID категорий. Сделайте перебор массива в цикле, внутри цикла делайте подсчет по каждой категории, плюс общий счетчик в виде переменной.

      1. Ivan пишет:

        Спасибо за совет, но вот на последнем моменте и запнулся как раз: форичем прогнать получается — набор отдельных «количеств» получаю, а вот с суммирующей переменной — проблем: не представляю вообще как её сделать — не силен в пэ-хэ-пэ.
        Подскажите плиз.
        Спасибо.

        1. htmaker пишет:

          $sum = 0; # счетчик
          foreach ($arCategory as $catID){
          $cnt = 0;
          $cnt = get_category($catID)->category_count;
          $sum = $sum + $cnt;
          }
          echo ‘Общ. кол-во’.$sum;

          1. htmaker пишет:

            в качестве подсказки)

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

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

Комментарии

  • Загрузка...

Наверх