Всем привет ребята! Сегодня мы поговорим о выводе определенного количества записей на страницы Вашего сайта или блога WordPress. Это, кстати, мы будем делать без плагинов, что очень и очень необходимо. Задать число записей, которые Вы хотите выводить на страницах Вашего сайта (блога), можно в панели администратора WordPress, Вам необходимо зайти в Параметры-Чтение.
Это выглядит примерно следующим образом:
Но огромный минус данного метода заключается то, что данное количество записей, элементов будет выводиться абсолютно на всех страницах WordPress сайта. Конечно, проблему можно решить с помощью замечательного плагина Different Posts Per Page, но в последней версии было слишком много изменений.
Теперь новая версия плагина Different Posts Per Page добавляет свои настройки в пункт Параметры-Чтение, а раньше он создавал отдельную страницу с настройками. С помощью него можно теперь выбрать различные виды страниц, где можно выбрать количество постов, а также возможность сортировке по дате, автору, заголовку, случайным образом и так далее.
Конечно, сортировка записей очень хорошая функция, но как быть, если Вам необходимо вывести различное количество записей для разных категорий сайта на страницу. В старой версии данного плагина такая функция была. Например, у Вас на сайте есть категория, где просто выводить необходимо анонсы, а есть главная страница, на которую необходимо выводить эффектно и ярко статьи, это все можно было сделать с помощью старой версии плагина.
Но теперь есть очень простой метод, без использования плагинов. Поэтому, Вам необходимо зайти в файл functions.php, открыть его и вставить следующий код:
function custom_posts_per_page($query){
if(is_home()){
$query->set('posts_per_page',8);
}
if(is_search()){
$query->set('posts_per_page',-1);
}
if(is_archive()){
$query->set('posts_per_page',25);
}//endif
}//function
//this adds the function above to the 'pre_get_posts' action
add_action('pre_get_posts','custom_posts_per_page');
Здесь мы используем операторы is_home – для главной страниц, is_search – для страницы поиска, is_archive – для страницы архивов, а также используем параметр post_per_page, которые отвечает за выводимое количество записей на страницах WordPress сайта. Если мы указываем значение -1, то это означает, что нам необходимо вывести абсолютно все записи на странице. Удачи Вам, ведь данный метод очень прост и он е использует плагинов.
Не забудьте также почитать:
- Выводим в сайдбаре список новостей из определенной рубрики
- Определяем идентификатор категории WordPress и выводим на страницу нужные записи
Также советуем почитать на PressDev.RU
Короткая ссылка: http://pressdev.ru/?p=2477
Спасибо, обошелся без плагина ))
Можете поделиться решением!
В новой версии WP 3.8 не работает, может есть какой другой способ
Большое спасибо! Без плагина способ гораздо лучше (в особенности когда важны ресурсы и время отработки скрипта)
Добавила в закладки)
Скажите, пожалуйста, а можно ли этим способом указать вывод НУЛЯ статей. То есть фактически запретить вывод статей для одной из рубрик сайта?
Если просто указываю (‘posts_per_page’,0), то не работает.
Заранее спасибо, если сможете подсказать.