В некоторых случаях у вас могут быть очень длинные статьи или руководства на сайте WordPress, которые неудобно читать целиком на одной странице. Чтобы улучшить пользовательский опыт и ускорить загрузку страниц, стоит разделить такой контент на несколько страниц. В этой статье мы подробно рассмотрим, как реализовать пагинацию постов в WordPress с помощью встроенных возможностей и полезных плагинов, а также покажем примеры кода для кастомных решений.
Зачем разбивать длинные посты на страницы в WordPress
Длинные статьи могут быть полезны, но часто они усложняют восприятие информации посетителями сайта. Разделение контента на части позволяет:
- Улучшить юзабилити: читателю проще воспринимать небольшие порции информации;
- Снизить нагрузку на сервер и ускорить время загрузки;
- Повысить количество просмотров страниц — пользователь переходит по страницам;
- Улучить SEO: поисковые системы лучше индексируют разбитый по страницам контент.
При этом важно не переборщить с количеством страниц, чтобы не ухудшить опыт пользователя.
Встроенная пагинация постов: тег <!--nextpage-->
WordPress из коробки поддерживает разбивку записи на страницы с помощью специального тега <!--nextpage-->. Этот тег вставляется в текст записи в режиме Текст (HTML), и WordPress автоматически покажет навигацию между страницами.
Чтобы использовать этот метод:
- При редактировании поста переключитесь в текстовый редактор;
- В нужном месте текста вставьте
<!--nextpage-->; - Обновите или опубликуйте запись.
Например, если у вас есть статья с тремя частями, разместите два таких тега, чтобы разделить текст на три страницы.
Пагинация появится автоматически, и пользователи смогут переключаться между страницами поста.
Кастомизация навигации между страницами
Для изменения вида навигации можно использовать фильтр wptem_wp_link_pages_args и функцию wp_link_pages(). Вот пример функции для вывода пагинации с кастомным оформлением:
function wptem_custom_wp_link_pages() {
wp_link_pages(array(
'before' => '<div class="wptem-pagination"><strong>Страницы:</strong> ',
'after' => '</div>',
'link_before' => '<span>',
'link_after' => '</span>',
'next_or_number' => 'number',
'separator' => ' | ',
));
}Вызовите эту функцию в шаблоне single.php внутри цикла, чтобы заменить стандартную пагинацию.
Плагины для удобного разделения длинных записей
Если тег <!--nextpage--> кажется неудобным или хочется более продвинутой пагинации с AJAX, анимацией и прочими функциями, можно воспользоваться плагинами:
- Page Break Preview — улучшает визуальное разделение страниц в редакторе;
- Pagination by BestWebSoft — позволяет настраивать стиль навигации;
- WP-PageNavi — добавляет продвинутую навигацию по страницам, включая посты;
- WPGPT — если вам нужно автоматическое создание кратких частей статьи с помощью ИИ, можно использовать этот плагин для генерации содержания и страниц.
Подключение и настройка плагинов обычно несложны, однако для более точного контроля лучше комбинировать их с кастомным кодом.
Автоматическое разбиение записи по количеству слов или символов
Иногда хочется разбивать пост не вручную, а программно, например, каждые 1000 слов создавать новую страницу. Для этого можно использовать фильтры WordPress и написать свой код.
Пример функции, которая добавляет тег <!--nextpage--> каждые 1000 слов:
function wptem_auto_paginate_post_content($content) {
if (is_single()) {
$words = explode(' ', $content);
$chunk_size = 1000;
if(count($words) > $chunk_size) {
$chunks = array_chunk($words, $chunk_size);
$new_content = '';
foreach($chunks as $chunk) {
$new_content .= implode(' ', $chunk) . '<!--nextpage-->';
}
return $new_content;
}
}
return $content;
}
add_filter('the_content', 'wptem_auto_paginate_post_content', 5);Этот код автоматически вставляет тег разбиения после каждых 1000 слов внутри записи при выводе на сайте.
Важные нюансы
- Следите, чтобы не было лишних тегов
<!--nextpage-->в конце контента; - Учитывайте, что пагинация может повлиять на SEO, если не настроить canonical и rel=prev/next;
- Проверьте совместимость с темой и плагинами.
Оптимизация пагинации с помощью SEO и UX
Чтобы пагинация работала эффективно, нужно:
- Использовать правильные теги
rel="prev"иrel="next"для поисковых систем; - Добавить в шаблон хлебные крошки для удобства перехода;
- Проверить, что навигация видна и понятна на мобильных устройствах;
- Использовать AJAX-подгрузку при необходимости, чтобы избежать перезагрузки страниц.
Для быстрого SEO-улучшения можно применить плагин Clearfy Pro, который помогает оптимизировать пагинацию и структуру сайта. Подробнее о нем можно узнать на официальной странице Clearfy Pro.
Итоги и рекомендации по разделению постов на страницы в WordPress
Разделение длинных записей на страницы — полезная практика для улучшения удобства чтения и SEO. В большинстве случаев достаточно встроенного тега <!--nextpage-->. Для более сложных задач можно использовать плагины или написать свой код, например, для автоматического разбиения по количеству слов.
Не забывайте тестировать результат на разных устройствах и проверять SEO-настройки. Если нужна автоматизация и дополнительный функционал, обратите внимание на плагины из каталога WPSHOP.RU.