1 Wordpress 1

Как сделать в wordpress постраничную навигацию без плагина

Всем привет. Сегодня я вам расскажу, как делается в wordpress постраничная навигация без плагина и без всякой лишней нагрузки на систему. Все настолько просто, что даже говорить особо не о чем. Все что вам нужно — это движок wordpress версии 4.1 или выше, а также ftp-доступ к вашему сайту, чтобы немного поменять код одного из файлов.

Делаем постраничную навигацию одной строчкой кода

Во-первых, вам нужно найти все php-шаблоны, на которых нужна такая навигация. В большинстве тем такой файл называется archive.php или category.php. В моем случае первый вариант. Именно этот шаблон отвечает за вывод всех записей за какой-то период времени, либо записей из определенной рубрики.

В нем вы можете увидеть стандартный цикл wordpress, который отвечает за вывод постов. Он начинается словами: while (have posts()) и заканчивается ключевым словом endwhile. Так вот сразу после него и нужно вставить нашу постраничную навигацию, а делается это очень просто, всего лишь нужно написать вот что:

<?php the_posts_pagination() ?>

Это функция, которая появилась в движке с версии 4.1 и она как раз отвечает за вывод постраничной навигации. На скриншоте вы можете увидеть, как я вставил это в свой шаблон:
постраничная навигация без плагина в wp
Также хочу отметить, что этот кусок кода нужно вставить в html-тег div. Это не обязательно, но крайне желательно, чтобы вы могли позже обратиться к элементу через стили и оформить его. Например, на моем блоге она выглядит так:
внешний вид
По умолчанию же по-другому, но вы всегда можете настроить под себя, если разбираетесь в css. Если вам интересно, какой именно код выводит функция, то вот он:

<nav class="navigation pagination" role="navigation">
        <h2 class="screen-reader-text">Навигация по записям</h2>
        <div class="nav-links"><span class="page-numbers current"><span class="meta-nav screen-reader-text">Страница </span>1</span>
                <a class="page-numbers" href="http://site.ru/page/2/"><span class="meta-nav screen-reader-text">Страница </span>2</a>
                <span class="page-numbers dots">…</span>
                <a class="page-numbers" href="http://site.ru/page/28/"><span class="meta-nav screen-reader-text">Страница </span>28</a>
                <a class="page-numbers" href="http://site.ru/page/29/"><span class="meta-nav screen-reader-text">Страница </span>29</a>
                <a class="next page-numbers" href="http://site.ru/page/2/">Следующая страница</a>
        </div>
</nav>

Соответственно, по этим классам вы можете обращаться к элементам в css и стилизовать их. Исходный код функции находится: wp-includes/link-template.php примерно на 2510 строке. Вы можете изменить его. Например, изменить названия стилевых классов. Лично я удалил h2-заголовок «Навигация по записям» и больше ничего не трогал.

Параметры функции

По умолчанию параметры уже определены и вы можете без проблем писать функцию с пустыми круглыми скобками, то есть без всяких параметров. Однако, если вы хотите управлять количеством выводимых страниц, то придется их менять. Делается это легко, у функции 3 возможных параметра:

  1. show_all — вывести вообще все страницы. Не рекомендуется, если у вас их больше десяти.
  2. end_size — число страниц в начале и конце списка с навигацией.
  3. mid_size — число страниц, которые находятся слева и справа от активной, то есть текущей.

Как записать и определить параметры? Можно массивом. Делается это так:

<?php the_posts_pagination( array(
        'end_size' => 3 ) ); 
?>

Таким образом, будет установлено по три ссылки для перехода на первые и последние 3 страницы. Через запятую вы можете записать второй и третий параметр. В общем, ничего сложного.

Итак, сегодня мы сделали постраничную навигацию на сайте wordpress без установки дополнительных плагинов. На этом у меня все, до встречи в других статьях.

Минуточку вашего внимания: Все мы хотим размещать свои сайты на надежном хостинге. Я проанализировал сотни хостингов и нашел лучший - HostIQ В сети сотни положительных отзывов о нем, средняя оценка пользователей - 4.8 из 5. Пусть вашим сайтам будет хорошо.

Еще материалы по Wordpress

Курс по созданию шаблонов для Wordpress

Премиум уроки по Wordpress

Классный плагин для Wordpress

  • Валерий

    Интересно! Нужно попробовать на своем тестовом сайте. Спасибо Михаил!!!

    2016-03-31 в 7:26 | Ответить