Постраничная навигация WordPress с помощью WP-PageNavi. Плагин постраничной навигации WP PageNavi: установка и настройка

Доброго времени суток, дорогие друзья! Сегодня мы поговорим с вами о том, как сделать на WordPress такую красивую и удобную вещь как постраничную навигацию с помощью плагина WP-PageNavi или простого кода. Не знаю как вам, а мне лично встроенная навигация в движке WordPressсовсем не нравится.

Вот что это за навигация такая? Ладно, если блог был бы еще молодой, и на нем было бы не так много статей, но что если их уже более 200-300? В таком случае такая вот навигация может запросто отпугнуть многих ваших читателей, ведь никому не хочется нажимать на кнопку «предыдущая запись» до потери пульса, чтобы добраться до нужного материала. К тому же данная надпись выглядит столь незаметно, что ее могут просто не увидеть, что в итоге приведет к уменьшению просмотра страниц на посетителя, и времени проведенному на сайте, а это сейчас очень при раскрутке любого сайта, которые нельзя игнорировать. Итак, если вы все же собрались делать постраничную навигацию, то можете воспользоваться любым способом представленным ниже.

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

Способ 1 . Скачиваем плагин WP-PageNavi здесь и закачиваем его на блог, активируем, переходим в адмике блога в «настройки» «список страниц». Тут нам нужно настроить только один параметр это «количество страниц для показа». Я лично указал 10, чтобы моя навигация была очень видна посетителям. Кстати, если вдруг у вас вся постраничная навигация не влезет в шаблон вашей темы, то есть если она будет выглядеть примерно в таком виде:

то можете просто убавить это число или еще лучше — убрать из настроек плагина надпись «страница» и заменить их стрелочками. Ок, после этого нажимаем сохранить, и наблюдаем, как у нас появилась простая постраничная навигация на блоге. Если этого не произошло, то идем во «внешний вид» « редактор» открываем файл основной шаблон (index.php) и ищем примерно вот такой код: или что-то в этом роде и меняем его на: , сохраняем запись.

Ту же самую операцию проделываем и с файлами archive.php и search.php если хотите, чтобы данная навигация была не только на главной странице, но еще и в отдельных рубриках и при поиске. Гуд, хочу вас предупредить на всякий пожарный, что данный плагин не у всех работает, так что если у вас ничего не получилось, то можете установить себе аналогичный плагин WP-Page Numbers . Если будете его устанавливать, то вам также надо будет вставить специальный код в тех же самых файлах.

Красивые стили-оформления для постраничной навигации плагина WP-PageNavi и WP-Page Numbers.

Вы наверняка уже заметили, что у меня постраничная навигация выглядит намного лучше и привлекательнее чем у вас. Это связано с тем, что у меня стоит дополнительный плагин WP-Page Numbers style , который работает как для WP-PageNavi так и для WP-Page Numbers. Если вдруг вы в кодах, как и я, так сказать не профи, чтобы самим прописывать оформления в файлах плагина, то можете просто поставить себе данный плагин. После того как установите его, у вас в адмике появится новая вкладка PageNavi Style. В ней вы можете выбрать любой на свой вкус стили-оформления постраничной навигации.

Всего в плагине 20 видов стилей со всеми цветами, которые только есть. Также, если вам вдруг ничего из списка не понравится, то вы можете во вкладке Select StyleSheet поменять настройки с «Existing Styles» на «Custom», перед вами появится редактор, где вы сможете указать нужные вам настройки, цвета и т.д. Если что, вот вам их перевод:

Heading Color - цвет заголовка.

Background Color - цвет заднего фона.

Active / Current Background Color - цвет кнопки при наведении на нее курсора мыши.

Font Size - размер шрифта.

Link Mouse Hover / Active Color - цвет ссылки при наведении на нее курсора мыши.

Link Border Color - цвет границы кнопки с номером страницы.

Link Border Mouse Hover/Active Color - цвет границы, при наведении курсора мыши.

Align Navigation - выравнивание на странице: по центру, по левому или правому краю.

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

Если вы не из любителей ставить очередные ради того чтобы улучшить функционал и , то можете пойти обходным путем — просто установить код, который и будет выводить данную навигацию, но перед этим сделайте на всякий случай.

Способ 2 . Переходим во «внешний вид» « редактор» и открываем файл функции темы (functions.php) и в самом конце перед тегом?>

function wp_corenavi () {

$pages = "";
$max = $wp_query->max_num_pages;


$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 = ""."\r\n";

if ($max > 1) echo "
";
}

Кстати, в коде есть некоторые пояснения на русском, так что можете поиграться немного с числами, если вам это нужно. Теперь, как и с плагином WP-PageNavi заходим в файлы: functions.php, index.php и archive.php находим там строчку и после нее или еще несколько строчек, добавляем код

Способ 3 . Данный способ аналогичен второму, но все же код немного отличается. В файле функции темы (functions.php) в самом конце перед тегом?> вставляем вот такой код и сохраняем запись.

function navigation () {
global $wp_query, $wp_rewrite;
$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 = 0; //1 — выводить текст «Страница N из N», 0 — не выводить
$a["mid_size"] = 2; //сколько ссылок показывать слева и справа от текущей
$a["end_size"] = 5; //сколько ссылок показывать в начале и в конце
$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 "
";
}

. Теперь заходим в файл таблица стилей (style.css) и где-нибудь вставляем этот код стилей, где коды файла начинаются с точки, и сохраняем запись.

.navigator {margin:10px 7px;
background:#fff;
border:1px solid #aaa;
padding:15px;
overflow:hidden;
font-size:13px;
color:#000;}

.navigator a{background: #fff;
border: 1px solid #DDDDDD;
color: #000000;
font-size: 13px;
padding: 10px;
text-decoration: none;}


background:#f1f8f9;
border: 1px solid #C6D2D4;}

.navigator a:hover{background: #fff;
border: 1px solid #111;
color: #0000cc;
font-size: 13px;
padding: 10px;
text-decoration: none;}

.navigator span.pages {padding: 3px 5px;
background:#f1f8f9;
border: 1px solid #C6D2D4;}

.navigator span.current {background: #fff;
border: 1px solid #111;
color: #0000cc;
font-size: 15px;
padding: 10px;
text-decoration: none;}

.navigator span.extend {padding: 3px 5px;
background:#f1f8f9;
border: 1px solid #C6D2D4;}

.str{background: #fff;
border: 1px solid #DDDDDD;
color: #000000;
font-size: 13px;
padding: 10px;
text-decoration: none;}

Способ 4 . В файле функции темы (functions.php) в самом конце перед тегом?> вставляем вот такой код и сохраняем запись.

function my_pagenavi ($pages = "", $range = 2)
{
$showitems = ($range * 2)+1;

global $paged;
if (empty ($paged)) $paged = 1;

if ($pages == "")
{
global $wp_query;
$pages = $wp_query->max_num_pages;
if (!$pages)
{
$pages = 1;
}
}

if (1 != $pages)
{
echo «

»;
}
}

В файлах: functions.php, index.php и archive.php находим там строчку и после нее или еще несколько строчек добавляем код . Теперь заходи в файл таблица стилей (style.css) и как в предыдущем примере вставляем этот код и сохраняем запись.

.pagination {
clear: both;
font-size: 12px;
margin-top: 10px;
text-align: center;
}

.pagination span, .pagination a {
text-decoration: none;
border: 1px solid #BFBFBF;
padding: 3px 5px;
margin: 2px;
}

.pagination a:hover{
border-color: #000;
}
.pagination .current{
font-weight: bold;
}

Способ 5 . Скачиваем этот файл , берем из него код и вставляем в (functions.php) в самом конце перед тегом?> и сохраняем запись. Если что заранее извиняюсь за неудобства, так как код был слишком большим для публикации. Теперь в файлах: functions.php, index.php и archive.php находим там строчку и после нее или еще несколько строчек добавляем код

Если что, все коды были проверены на работоспособность, так что один из примеров у вас должен работать в любом случае. На этом все, удачи.

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

Пример такой навигации Вы можете видеть на . Внизу страницы Вы найдете пронумерованные страницы, где, нажав, например, на “3”, Вы попадаете на третью страницу.

К сожалению, в WordPress по умолчанию такой функции нет. Изначально Ваша навигация будет выглядеть примерно так (будет видно, когда количество постов превысит 10):
Да, когда статей на блоге не так много, можно конечно переходить постоянно на “предыдущие записи”. Но, когда их количество перевалит хотя бы за 30, попасть на нужную страницу становится проблематично.

Именно поэтому, большинство блоггеров находит решение в плагинах для WordPress или “сами ручками” редактируют код . Так как этот блог, в первую очередь, рассчитан для новичков, не буду заморачивать Вам голову, покажу на примере плагина.

Плагин носит название WP Page Numbers . Этот плагин является аналогом популярного плагина WP Page Navi , но WP Page Numbers по функционалу мне нравится больше.

Так что, этот плагин нужно ставить обязательно. А какой выбрать, решать Вам. Я рассмотрю пример установки и настройки плагина WP Page Numbers .

Если у Вас в тему (шаблон) блога встроена постраничная навигация, Вам не нужно ставить плагин WP Page Numbers.

Установка и настройка плагина WP Page Numbers

P.s. Так как сине-голубой цвет не особо сочетается с цветовой схемой моего блога, я решил поменять цвета . Расскажу как это делается, может тоже кому-то пригодится.

Заходите в папку плагина wp-content/plugins/wp-page-numbers/название_темы (его Вы выбрали в третьем шаге и название можно посмотреть с левой стороны выбора темы для плагина.)

Находите там изображения и редактируете их в любом графическом редакторе (Adobe Photoshop, Paint и т.п.). И обновляете эти файлы. Вот мой результат:

Также я поменял цвет фона, при наведении. Для этого я открыл файл wp-page-numbers.css, который находится в той же папке, где и изображения. Чтобы поменять цвет, в этом файле нужно найти в моем случае 44-ую строку и поменять значение в #wp_page_numbers li a:hover background:. Я выбрал оранжевый цвет, поставил следующий код цвета: #FAD93E.
Если Вы вдруг не поняли каким образом я нашел эту строку, то настоятельно рекомендую Вам прочитать урок о полезном

Каждый сайт — это по сути целая система навигации и ссылок , по которым перемещаются роботы и посетители. Данная система может обладать разной степенью сложности. Как правило, в ее состав входит главное меню, содержащее в себе ссылки на все основные разделы и статичные страницы, дополнительные меню, (упорядоченный и структурированный список из ссылок на все страницы и разделы). Кроме того, в состав системы навигации интернет-ресурса может входить постраничная навигация .

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

Что касается настроек, то здесь их не слишком много. Для начала следует указать названия первой и последней, а также следующей и предыдущей страниц. Эти кнопки будут показаны независимо от того, на какой странице вы находитесь в данный момент. Чтобы кнопки от WP Page Navi появились на блоге, необходимо удалить код стандартной навигации в шаблоне, как я уже писал наиболее вероятно, что он будет находится в шаблоне archive.php или content.php. И вместо кода вставить:

Обычно он начинается с такой строчки —

. Редактировать внешний вид кнопок (основной и фоновый цвет, рамки, шрифты и т.д.) можно через CSS-файл данного плагина pagenavi-css.css, их поддержку можно включить в пункте “Настройки списка страниц ”. Однако это не очень удобно. Поэтому для WP Page Navi был создан так называемый плагин-дополнение под названием WP PageNavi Style . После его установки в меню появятся все нужные опции для редактирования внешнего вида кнопок.


Все вопросы можно задавать в комментариях, если кому-то не ясно по тому или другому пункту. Мы всегда ответим на все вопросы.

Практически любой блоггер, который ведет свой блог на движке WordPress, знаком с плагином WP-PageNavi, который выводит постраничную навигацию такого вида:

Но не каждый знает (включая меня до недавнего времени), что WordPress имеет встроенную функцию (начиная аж с версии 2.1), которая реализует практически тот же самый функционал . Т.е. необходимость в использовании плагина отпадает.

Некоторое время я пользовался другим аналогичным решением , за что большое спасибо его автору Тимуру.

Функция, которую я вам предлагаю, совсем небольшая по размеру:

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 "

"; }

Данный код необходимо поместить в файл functions.php вашего шаблона. В функции всего пять опций, они отделены разрывами строк. Комментарии я написал, думаю, тут все понятно.

Для того, чтобы вывести навигацию в нужном месте, вставляйте в шаблон следующий код:

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

Как видите, присутствуют все необходимые CSS-классы, которые можно использовать для оформления любого элемента навигации (например, текущую страницу, ссылки на предыдущую и следующую страницы).

Проверял данную функцию на версиях WordPress, начиная с 2.3.3, а также тестировал варианты с включенным и отключенным ЧПУ. Все работает, как и полагается.

Пользуйтесь.

Если вам нужен надежный хостинг и регистрация доменов , то вас ждет крупнейших украинский хостинг-провайдер FREEhost.UA, который готов предложить любой вид хостинга, начиная от виртуального, заканчивая арендой готового сервера.

В настройках вашего блога WordPress в параметрах "Чтение " в пункте "На страницах блога отображать не более " по умолчанию стоит - 12 записей. И когда их количество на блоге или в отдельно взятой рубрике перевалит за 10, внизу главной страницы или страницы этой рубрики появится плохо заметная ссылка "Раньше ".

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

Исправить эту досадную оплошность поможет плагин постраничной навигации WordPress - WP PageNumbers. После установки, активации и настройки плагина, ваш блог приобретет вот такую удобную постраничную навигацию:

Установка WP PageNumbers .

  1. Скачать плагин WP PageNumbers можно .
  2. Активировать плагин.

Настройка WP PageNumbers .

Перейдите в вашей панели администратора Параметры Page Numbers .

1. Page Number Themes

Поставьте галочку (если не стоит) пункта "Include theme stylesheet for page numbers " и тем самым разрешите отображать одну из тем плагина в постраничной навигации. Ниже выберите наиболее подходящий для вашего шаблона стиль постраничной навигации.

2. Settings-Text

В этих настройках я вместо "Page " прописал "Страница " и полем ниже заменил "of " на "из ".

3. Settings-show/hide

Здесь лучше оставить все галочки для отображения полной информации в выбранной теме вашей постраничной навигации.

4. Settings-Misc

Впишите количество страниц, отображаемые в навигационной панели подряд до троеточия. Если оставить поле пустым, то по умолчанию будет 10 страниц, если ноль, то без ограничений.

5. Instructions-Code to add to your theme

Откройте файл index.php для чего перейдите в вашей панели администратора Внешний вид → Редактор → Основной шаблон (index.php) . Найдите там код, содержащий в себе слова "Предыдущая запись " и "Следующая запись ".

Замените его на новый код, предоставленный под пунктом "Code to add in your theme ".

То же самое проделайте с файлом "archive.php ", отвечающем за вывод записей в каждой отдельной рубрике.

Не в каждой теме в файле index.php можно найти слова "Предыдущая запись " и "Следующая запись ". В этом случае вставьте наш код перед кодом в конце файла. А для удаления, уже ставшими лишними, ссылок "Предыдущая запись " и "Следующая запись ", удалите в файле loop.php строки со следующим содержимым: