Многие пользователи движка WordPress знакомы с плагином WP-PageNavi, который добавляет на сайт удобную постраничную навигацию.Многие не очень любят использовать плагины, поэтому в этой статье расскажу как сделать такую навигацию без их использования.

WordPress версии 2.1 или выше уже имеет встроенную функцию, реализующую такой же функционал. Поэтому, надобности в использовании лишнего плагина, нагружающего сервер, никакой нет.
1) Откройте файл functions.php используемой вами темы и вставьте туда следующий код (можно в самый низ):
function wp_corenavi() {
global $wp_query;
$pages = '';
$max = $wp_query->max_num_pages;
if (!$current = get_query_var('paged')) $current = 1;
$a['base'] = str_replace(999999999, '%#%', get_pagenum_link(999999999));
$a['total'] = $max;
$a['current'] = $current;$total = 1; //1 - выводить текст "Страница N из N", 0 - не выводить
$a['mid_size'] = 3; //сколько ссылок показывать слева и справа от текущей
$a['end_size'] = 1; //сколько ссылок показывать в начале и в конце
$a['prev_text'] = '«'; //текст ссылки "Предыдущая страница"
$a['next_text'] = '»'; //текст ссылки "Следующая страница"if ($max > 1) echo '
';
if ($total == 1 && $max > 1) $pages = 'Страница ' . $current . ' из ' . $max . ''."\r\n";
echo $pages . paginate_links($a);
if ($max > 1) echo '';
}
Эту функцию можно настроить под ваши нужды. Читайте комментарии к функции.
2) Функцию мы активировали, теперь надо вывести её в нужном месте на сайте.
Для того, чтобы вывести навигацию в нужном месте, вам нужно найти примерно такой код (выделен серым цветом):
И заменить его следующим:
<?php if (function_exists('wp_corenavi')) wp_corenavi(); ?>
Как правило, он находится в файлах: index.php, search.php, archive.php
В результате вы получите такой вид:
3) На этом этапе можно остановиться. Но, если вы хотите сделать навигацию более привлекательной визуально, то тогда вам нужно открыть файл style.css и найти там следующую строчку: .navigation {
Она отвечает за визуальное оформление постраничной навигации. Вставляйте между скобками { } нужные вам параметры. Например:
.navigation {
padding: 10px 0;
text-align: center;
color: #FF0000;
font-size: 18px;}
На этом всё.