Постраничная навигация в WordPress с плагином WP-PageNavi

31.05.2013

Все таки мне больше нравится постраничная навигация с плагином WP-PageNavi.

Скачиваем плагин с официального сайта, закачиваем в папку plugins, затем удаляем код для перелистывания – следующая-предыдущая страница (у меня он выглядел так, у вас может по-другому, а может его и не быть):

<div class="navigation">
  <div class="left"><?php next_posts_link(__('&laquo; Previous Entries', 'pyrmont_v2')); ?></div>
  <div class="right"><?php previous_posts_link(__('Next Entries &raquo;', 'pyrmont_v2')); ?></div>
</div>

И вставляем вместо него код для вывода постраничной навигации:

<?php wp_pagenavi(); ?>

Но лучше вставить код с условием, что если плагин не включен, то будет выводиться стандартная навигация – Предыдущий-Следующий, а иначе, если плагин не будет включен, то на странице выведется ошибка.

<div class="navigation">
<?php if(function_exists('wp_pagenavi')) { ?>
  <?php wp_pagenavi();  ?>
<?php }
else {?>
  <div class="alignleft"><?php next_posts_link('Раньше') ?></div>
  <div class="alignright"><?php previous_posts_link('Позже') ?></div>
<? } ?>
</div>

Сначала активируем плагин, а затем сохраняем изменения в шаблоне и настраиваем стили для отображения на сайте.

Если на странице используется выборка query_posts(), тогда плагин может срабатывать неправильно, и нужно использовать немного другой формат вывода плагина.

Вместо:

<?php query_posts('cat=1&showposts=10'); ?>

Нужно использовать код:

<?php query_posts( array('cat'=>1, 'paged'=>get_query_var('paged'), 'posts_per_page'=>'10' ) ); ?>

где 1 – это номер категории, из которой выводятся посты, 10 – количество постов на странице.

Рекомендую к прочтению:

Оставить комментарий