n-wp.ru — блог о WordPress

Как вывести популярные записи (по количеству просмотров) из текущей рубрики, метки?

Всем привет. Использую плагин WP-PostViews, а именно показываю популярные записи по количеству просмотров не через виджет, а через код в шаблоне index.php:

В итоге функция get_most_viewed выводит – 7 популярных постов из всех записей блога. Результат очень понравился, главная страница стала более информативной. На этом я не остановился и вот я здесь.

В самом плагине WP-PostViews, нашел функции:

и

Если прописать в шаблоне archive.php:

Получим результат – из 25-ой категории покажет 7 постов. А мне нужно показать популярные записи не из заданной, а из текущей рубрики, метки.

Есть некоторые догадки, может в параметр $category_id = 0 прописать функцию, которая – возвращает ID текущей рубрики, а дальше функция get_most_viewed_category будет знать все свои параметры.

Помогите, подскажите. Спасибо.

1 комментарий

  • Методом проб и ошибок, а одним словом — врождённым эмпирическим методом =), реализовал я такой вывод записей следующим образом:

    1. Устанавливаем плагин WP-PostViews.
    2. В шаблон index.php ставим код:

    // Вывод на главной 7 популярных записей со всего блога

    3. В шаблон archive.php:

    Для вывода популярных записей из текущей рубрики, после

    ставим код

    // Вывод 7 популярных записей из текущей рубрики

    Для вывода популярных записей из текущей метки, после

    ставим код

    // Вывод 7 популярных записей из текущей метки

    4. CSS и плагин настраиваем под себя.

    Функции: get_most_viewed, get_most_viewed_category, get_most_viewed_tag — обучены в самом плагине.

    Функция: get_query_var() – получает параметры текущей страницы, в нашем случае:

    get_query_var(‘cat’) // Получает ID текущей рубрики
    get_query_var(‘tag_id’) // Получает ID текущей метки

    Вот и все =).

    P.S. Конечно, зная язык PHP, вывод популярных записей можно реализовать и самому, обойдясь без плагина. Но в моем случае, такой способ меня устраивает, может пригодится еще кому-то.