Функция the_posts_pagination()
в WordPress
Функция the_posts_pagination()
выводит ссылки на страницы с постами для перехода к следующей или предыдущей группе записей. Она используется на страницах архивов (категории, метки и т.д.).

Эта функция подходит для всех типов записей. Чтобы использовать результат для дальнейшей обработки, используйте функцию get_the_posts_pagination()
.
Возвращаемое значение
Возвращает null
, то есть ничего. Выводит HTML-код пагинации. Если пагинация отсутствует (менее 1 страницы), то ничего не выводится.
Применение
Вызов функции the_posts_pagination( $args );
Параметры ($args)
Параметры, которые определяют отображение результата. По умолчанию:
$args = array(
'show_all' => false, // отображать все страницы
'end_size' => 1, // количество страниц в начале и в конце
'mid_size' => 1, // количество страниц вокруг текущей
'prev_next' => true, // включить отображение ссылок "предыдущая/следующая"
'prev_text' => __('« Предыдущая'),
'next_text' => __('Следующая »'),
'add_args' => false, // дополнительные аргументы для ссылок.
'add_fragment' => '', // текст, который будет добавлен ко всем ссылкам.
'screen_reader_text' => __('Навигация по записям' ),
);
Этот массив передаётся в функцию paginate_links()
, поэтому смотрите описание функции для полного списка параметров. Полный список доступных аргументов можно найти в get_the_posts_pagination()
.
Примеры использования
Пример 1: Управление выводом
По умолчанию the_posts_pagination()
выводит первую и последнюю страницу, а также одну страницу с обеих сторон текущей. Остальные страницы заменяются многоточием. Этот вывод можно изменить с помощью аргументов:
show_all
— отображать все страницы.end_size
— количество страниц в начале и конце списка.mid_size
— количество страниц слева и справа от текущей страницы.
Пример кода:
the_posts_pagination( array(
'mid_size' => 2,
) );

Пример 2: Параметр end_size
Установим 2 ссылки на последние страницы в пагинации:
the_posts_pagination( array(
'end_size' => 2,
) );

Пример 3: Удаление заголовка H2 из шаблона
По умолчанию шаблон пагинации содержит скрытый тег H2, который добавляется для программ экранного считывания (это программы для людей с нарушениями зрения). Для SEO, возможно, лучше его удалить. Для этого можно использовать фильтр navigation_markup_template
:
// Удаление H2 из шаблона пагинации
add_filter('navigation_markup_template', 'my_navigation_template', 10, 2);
function my_navigation_template( $template, $class ){
return '
';
}
// вывод пагинации
the_posts_pagination( array(
'end_size' => 2,
) );
Пример 4: Вывод пагинации на экране
Для отображения пагинации просто вызовите функцию:
the_posts_pagination();
Это выведет следующий HTML:

Изменения в функции
Функция была представлена в версии 4.1.0.
Связанные функции
get_the_posts_navigation()
get_next_posts_page_link()
get_previous_posts_page_link()
the_comments_navigation()
the_posts_navigation()
Эти функции помогают организовать навигацию по записям и комментариям в вашем блоге.
Теперь вы знаете, как использовать функцию the_posts_pagination()
и какой у нее функционал. Эта информация поможет вам создавать удобные навигационные элементы на вашем сайте WordPress.