Вывод случайных записей в WordPress

Здесь будут рассмотрены 2 варианта вывода случайных записей на странице. Один — через «query_post», если перед конструкцией «if (have_posts())» и второй — через «WP_Query», когда конструкция что-то вроде «if ($loop->have_posts())».

Как вывести случайные посты в WordPress

Вывод постов через query_posts

Чтобы вывести записи рандомно в движке WordPress, можно использовать функцию «query_posts()» с параметром «orderby=rand&showposts=5» (выведет случайных 5 постов из всех рубрик). Данная функция размещается перед конструкцией «<?php if (have_posts()) : ?>» вот так:

Этот код редактируется в том файле шаблона темы, который отвечает за ту страницу на которой вам нужно изменить порядок вывода записей на сайте. Например: category.php, home.php и т.п.

Если убрать из параметра «&showposts=5», то будет выводиться количество записей заданное в системе, как и было.

🔥 Пишут что query_posts нужно использовать аккуратно или лучше вообще не использовать.

Вывод постов через new WP_Query

Встречался еще такой вариант, когда вместо простого «if (have_posts())» посты выводится через код вроде этого:

 

Здесь нужно просто в параметрах функции «WP_Query» вместо «$args» указать параметр «’orderby=rand&showposts=5’»:

Вот список других параметров, которые можно использовать и в первом и во втором случаях:

  • (‘meta_key=series&meta_value=dozory’) – вывод записей с произвольным полем «series» и его значением «dozory».
  • (‘cat=6&year=2018’) – вывод записей из категории с id=6, за 2018 год;
  • (‘cat=-2’) – не выводить категорию с id=2;
  • (‘cat=-1,-4,-6’) – не выводить категории с id, равным 1, 4 и 6;
  • (‘orderby=rand&showposts=17’) – случайные 17 записей из всех категорий;
  • (‘cat=1,3,6’) – вывести категории с id, равным 1, 3 и 6;
  • (‘category_name=Моя рубрика’) – вывести категорию с названием «Моя рубрика»;
  • (‘orderby=rand&showposts=11&cat=7’) – вывести рандомных 11 записей из категории, id=7;
  • (‘name=Вывод случайных статей в WordPress’) – вывод записи с названием «Вывод случайных статей в WordPress»;
  • (‘p=44’) – вывод одной записи с id=44;
  • (‘pageid=22’) – вывод одной страницы с id=22;
  • (‘pagename=Контакты’) – вывод страницы с названием «Контакты»;
  • (‘cat=6&showposts=10’) – вывод 10 постов из категории с id=6;
  • (‘cat=2&orderby=date&order=ASC’) – вывод записей из категории с id=2 по дате в хронологическом порядке (первыми идут свежие записи. Если нужно вывести в обратном порядке, то заменить ASC на DESC);
  • (‘posts_per_page=20’) – вывести на страницу 20 постов. Если задать «-1», то будут выводиться все посты;
Оцени!
[Всего: 1 Средняя: 5]
Ссылка на основную публикацию
Adblock
detector