Skip to content
 

Да здравствует постраничная навигация!

постраничная-навигацияЕсли Ваш сайт использует размещение статей в виде ленты новостей, то постраничная навигация WordPress Вам просто необходима.

Она улучшает поведенческий фактор, т.к. способствует удобству посетителей (улучшает «юзабилити»).

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

Самый простой способ — установить плагин постраничной навигации.

Я обнаружила в интернете положительные рекомендации на следующие плагины:

1    WP-PageNavi

2    WP-Page-Numbers

Естественно я выбрала  более свежую версию WP-PageNavi  (2.82 — на момент установки). Ссылка на страницу плагина здесь

Плагин нужно скачать, загрузить себе на сайт, установить и активировать.

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

ВНИМАНИЕ: Перед тем, как делать что-то с программным кодом, ОБЯЗАТЕЛЬНО сделайте полную резервную копию сайта на хостинге!!!

Для ленты новостей исправления вносятся  обычно  в index.php (основной шаблон)

Здесь нужно найти примерно такую фразу:

<div class=»navigation»>

<div class=»alignleft»><?php next_posts_link(__(‘&laquo; Older Entries’, ‘f2’)) ?></div>

<div class=»alignright»><?php previous_posts_link(__(‘Newer Entries &raquo;’, ‘f2’)) ?>

</div>

Две строчки со словами  previous_posts_link   и  next_posts_link как раз описывают навигацию по умолчанию, т.е. переход на предыдущую (previous)   и следующую (next ) страницы.

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

Эта строка запуска функции плагина.

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

Если все сделать правильно, то получаем внизу ленты новостей постраничную навигацию.

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

Если не удалили старые строки, то останется и старая навигация со стрелочками перехода на предыдущую или следующую страницу.

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

Для того, чтобы постраничная навигация показывалась и на страницах рубрик сайта и других архивных страницах, я отредактировала подобным образом через Редактор в административной панели сайта файл archives.php, который у меня за это отвечает.

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

Но плагины плагинами, а всегда хочется иметь какой-то альтернативный вариант.

Как в анекдоте про программиста, который, ложась спать, ставит рядом с собой два стакана: один стакан полный, на случай, если захочется пить,  а другой – пустой на случай, если пить не захочется.

В качестве альтернативы и ускорения  процесса нашелся вариант вставки кода непосредственно на сайт, что дает аналогичный действию плагина эффект.

function wp_corenavi() {

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 — выводить текст «Страница 1 из 10 (пример)», 0 — не выводить

$a[‘mid_size’] = 5; //сколько ссылок показывать слева и справа от текущей

$a[‘end_size’] = 1; //сколько ссылок показывать в начале и в конце

$a[‘prev_text’] = ‘&laquo;’; //текст ссылки «Предыдущая страница»

$a[‘next_text’] = ‘&raquo;’; //текст ссылки «Следующая страница»

if ($max > 1) echo ‘<div class=»navigation»>’;

if ($total == 1 && $max > 1) $pages = ‘<span class=»pages»>Страница ‘ . $current . ‘ из ‘ . $max . ‘</span>’.»\r\n»;

echo $pages . paginate_links($a);

if ($max > 1) echo ‘</div>’;

}

Если указанный текст функции вставить через админ панель  —  редактор в файл functions.php , то у Вас появится новая функция, которая организуют постраничную навигацию. Вставлять в самый конец перед последним  ?>

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

<?php if (function_exists(‘wp_corenavi’)) wp_corenavi(); ?>

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

Функция запускается,  постраничная навигация работает, но вид у нее получается очень неказистый.

Посмотрите сравнительный результат: сверху постраничная навигация с помощью плагина, а снизу — ручной вариант:

Постраничная навигацияАвтор утверждает, что можно улучшить внешний вид с помощью стилей, добавив их в файл style.css. Но я как ни пыталась их прицепить, эффекта не получила. То ли автор что-то недоговаривает, то ли описывает свой локальный случай, который еще надо обобщить. А может, у меня навыков не хватило. Короче, билась два дня,  а воз и ныне там…

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

Чем меня так привлекает эта функция?

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

Согласитесь, что с легкостью переключиться в самое начало все-таки приятно. И чем больше возможностей тем лучше!

Считаешь информацию полезной? Поделись с друзьями!

75 комментариев

  1. Сергей:

    Спасибо, то что сейчас нужно.

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

  3. Спасибо, буду знать.Я обычно в поисковике пишу нужное слово и статья тут же появляется.

  4. спасибо, очень нужный плагин
    а если бе плагина действовать — где именно вставить эту функцию?
    вверху functions.php или внизу? или после фразы какой-то?

  5. Добавить в самый конец после всего перед последним ?> Она работает только в общем теле.Если просто добавить в конец, то не сработает.
    Перед добавлением сделать бекап сайта на хостинге. Когда я добавляла эту функцию, ничего плохого не случилось.

  6. Да, установка постраничной навигации добавляет количество внутренних ссылок со страницы. Об этом тоже надо помнить…

  7. Владимир:

    Спасибо Елена за интересную и полезную статью.Обязательно воспользуюсь Вашей рекомендацией.
    -А вообще,хорошо что есть такие сайты как Ваш,можно очень много нового и полезного узнать для себя…
    Удачи Вам

  8. Елена:

    Спасибо за совет! Я у себя установила этот плагин! Я думаю посетителям будет удобней искать информацию!

  9. Елена:

    Классная это штука!!! У меня эта навигация с темой установлена. Но всеравно спасибо теперь буду знать какие плагины используются.

  10. Олег:

    Спасибо, ценные советы

  11. Дмитрий:

    Спасибо за статью, пригодилась!

    И еще одно: У вас замечательный сайт, поэтому я его награждаю «Кубком признания», который по традиции школы Твой Старт передается самым лучшим и интересным сайтам.

  12. Татьяна:

    Особенно интересна информация, проверенная опытом. Спасибо за своевременную информацию!

  13. Елизавета:

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

  14. Нина:

    Да, Плагин действительно нужный, ценные советы

  15. Елена:

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

  16. Я давно ее искала. Как вовремя мы с Вами встретились, Елена.))) Спасибо.

  17. Лариса:

    Спасибо большое! Я давно хотела что-то подобное! Обязательно попробую разобраться…Вы так хорошо все объяснили!

  18. А я что- то не могу найти эти две строчки.Что делать?Это точно в основном шаблоне надо убирать?

  19. Если сложно найти вручную, есть поиск. Откройте Редактор-Основной шаблон и нажмите одновременно Ctrl + F,в открывшееся окно поиска вставьте хотя бы navigation и поищите. Для ленты новостей на главной странице это обычно находится в Основной шаблон (index.php). Все случаи жизни я не гарантирую. Если искать в page.php, то это уже будет не для главной, а для других страниц сайта.

  20. Елена:

    Спасибо, что помогаете разбираться таким «чайникам» , как я! Для начинающих блоггеров очень полезно!

  21. классный плагин

  22. Елена, спасибо, но первая попытка не удалась: вставленная фраза привела к фатальной ошибке. Буду разбираться сегодня вечером. Спасибо.

  23. Елена, в этот раз сделала все. как Вы пишете, но опять приводит к фатальной ошибке… Не везет мне с этим плагином…

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

  25. Поздно, я завалила свой сайт. Подскажите, пожалуйста, может Вы знаете хорошего фрилансера, который может исправить ситуацию. Заранее спасибо.

  26. Нам с Татьяной удалось восстановить сайт, удалив на хостинге то, что она внесла в свой программный код неверно, а именно: она не сохранила свои удаленные две строчки навигации, а когда плагин запустить не удалось, решила поставить мои две строчки — и сайт рухнул. Этого делать нельзя. В каждой теме свой программный код. Поэтому и написано в тексте статьи, что строчки выглядят ПРИМЕРНО ТАК. Это не означает, что они полностью идентичны. Восстановление было бы проще, если бы была в наличии резевная копия сайта

  27. Елена, большое Вам спасибо за помощь. А эта история была для меня уроком: растем)))

  28. А вот интересно,если просто,не убирая эти две строчки,вставить функцию плагина?Что тогда будет?Будет просто и то и другое на сайте.(переход на др. страницу и навигация тоже)Или так не будет работать ни то ни другое?

  29. По логике должно быть и то, и другое. Функции запускаются независимо друг от друга. Не забудьте сделать РЕЗЕРВНУЮ копию перед испытаниями.

  30. Виктор:

    Отличный плагин, установил и сразу без настроек заработал.Большое спасибо!

  31. Нина:

    Давно думала о такой функции как постраничная навигация. А то у меня в теме внизу по-русски даже нет надписи типа «Раньше» или чего-то в этом роде, а написано по-английски «← Older posts». И люди, конечно же, не понимают, что, кроме этой страницы есть что-то еще. Сегодня буду пытаться. Хотелось бы, конечно, обойтись без плагина, чтобы лишний раз не перегружать сайт, но внешний вид не очень.

  32. Анатолий:

    Елена, помогите,пожалуйста, найти эти две строчки. Открываю редактор. Выбираю плагин. У него — 15 файлов.
    Вы пишете: «Откройте Редактор-Основной шаблон». index.php я не нашел. Если можно, подскажите.

  33. Ксения Юрьевна:

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

  34. Если нет достаточного опыта, лучше никуда не вмешиваться. Если решили вмешаться, сделайте бекап сайта на хостинге обязательно!

  35. Евгений:

    Да, очень хороший плагин, можно и с размером и цветом эксперементировать

  36. Олеся:

    Елена спасибо за статью. Очень актуальная тема. Очень хотелось сделать постраничную навигацию. Буду сейчас устанавливать

  37. Елена:

    А я, оказывается, при установке темы уже установила плагин «Список страниц» и даже активировала, но в настройках поставила не там галочку и у меня этот список стал «выпадающим», что, как сказал мне мой муж жутко не удобно. Но к тому времени я уже забыла где чего делала и какие галочки расставляла, сегодня, благодаря вам, у меня наконец-то нормальная постраничная навигация!

  38. Татьяна:

    Елена, добрый день! Подскажите, а нельзя ли сделать постраничную навигацию не только на главной странице, где блок статей, но и на другой странице?

  39. Татьяна! Можно все. Но я не пробовала. Просто поместить код в соответствующее место.

  40. Сергей Грозный:

    Вот спасибо! Я уже два попробовал, с моей темой wordpress похоже не совместимы. Надеюсь этот с подробными комментариями получится установить!

  41. Очень интересный плагин, обязательно сегодня попробую.

  42. Спасибо ! Воспользовалась вашим сайтом, чтобы изменить свой. Только в моем случае пришлось вставить другой код:

    И причем в index.php и arhive.php ( там даже в 2-х местах). Потратила много времени, но своего добилась. И почему .php у всех разный???

  43. Плагин установлен навигация действует с вашей помощью. Огромное спасибо!

  44. Надежда:

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

  45. Алексей:

    Хочется сказать вам отдельное спасибо Елена,за ваш сайт, и те подробности которые вы написали в доступной форме.Поэтому буду заглядывать к вам в гости,есть чему поучиться)))

  46. Наталья:

    Я установила плагин на тестовый подсайт. Но его в админпанели найти не могу. Где его искать?

  47. Наталья! Настройка плагина—>Параметры—>Список страниц
    Советую прочитать http://tvoy-internet.ru/plaginyi-dlya-wordpress-vyi-s-nimi-ili-bez/

  48. Наталья Тарм:

    Спасибо, Елена, успешно установила плагин постраничной навигации. Все работает отлично. Сейчас чуток настрою внешний вид и ok!

  49. Захожу к Вам второй раз. Первый раз не удалось установить. Поменяла тему — все просто класс! Спасибо!

  50. Дина:

    Спасибо. Сделала всё по инструкции. И активировала и запустила плагин так как вы написали, но вот почему то не наблюдаю на своем сайте эту заветную постраничную навигацию! Может шаблон сайта не подходит? А как можно узнать, что все дело в шаблоне?

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

  52. К сожалению, тот код, который предлагается на замену в этой статье не подошел к моей теме — никак не желали заветные цифирки внизу главной страницы появляться!
    Вчера набрела на сайт «Выжить в интернете». Автор Павел Краснов предложил другую версию замены кода:

    и, ура!, все получилось.
    Думаю, что эта информация окажется полезной кому-нибудь из начинающих сайтостроителей.

  53. Спасибо за информацию, Елена.
    Да, вы абсолютно правы, что навигация с плагином смотрится лучше чем настройка вручную.
    Я пока только учусь, но все же часто копаюсь в html Редакторе темы, в основном по внешнему виду,размеры полей, ширина колонок, подгонка виджетов.
    На данном этапе сделала вывод — не благодарное это дело и занимает очень много времени.
    И еще,не очень приятно, что создатели бесплатных тем для WordPress, делают все возможное (зашифровывают, прячут, навязывают) для того,
    чтобы нельзя было изменить некоторые настройки так, как нужно вебмастеру для его контента.

  54. Тамара:

    Спасибо,Елена!Сайт Ваш очень полезный,обязательно пригодятся Ваши рекомендации тогда,когда мне будет понятно,каким же всё-таки должен быть мой сайт.Задумок много,статьи пишутся,практики никакой.Пока ещё мне непонятно,что есть лента,что есть постраничный и есть ли что-то ещё из классификаций сайтов.Решила сначала окончить компьютерный ликбез,чтобы хотя бы терминология была знакомой(не скажу «понятной»,потому что до понятия нужен не один месяц и хорошая школа).А пока даже с электронным платежом не справилась.Сегодня начинается второй курс школы,10-недельный платный курс,с которым я,похоже,»пролетаю».Я не смогла добиться,чтобы мне прислали правильный счёт,счёт со скидкой выпускника «начальной школы».И поэтому не знаю,на какие реквизиты платить.Не смогла завести промокод,система выдала мне курс с приложениями,которые мне не нужны.Уж не знаю,радоваться или огорчаться этому.Возможно,радоваться,потому что есть возможность позаниматься усвоением компьютерной грамоты,чтобы научиться ставить галки и палки где надо и убирать не там поставленные.Поэтому и сайт не спешу обнародовать.Пока занимаюсь шаблоном(или как это по-компьютерному))))).Успеем ещё всех насмешить)Только как потренироваться теперь,когда окончен тестовый период?!Будем тренироваться «на кошках»(«Операция «Ы»)
    Вы меня удивили в очередной раз.Снимаю шляпу перед академиками компьютерной грамоты.Прочитав комментарии до конца,я увидела в разделе»Написать отзыв»свои данные,уже заведённые для комментария.Как система «вычислила»меня?Потому что я зашла из твиттера?
    Стыдно мне,хоть это нынче и не модно.Уже сколько лет компьютер величиной с пятиэтажный дом не считается лучшим,чем маленький,а я ещё только что заинтересовалась,из чего он состоит.
    Что посоветуете?

  55. AlexR:

    Здравствуйте Елена! Я тоже начинал с бесплатной версии СтартАп, но дальше не пошел. Теперь понимаю, что упустил время. Мне импонирует Ваш сайт. Теперь приходится наверстывать упущенное и я обязательно воспользуюсь многими Вашими статьями для улучшения позиций своего блога.

  56. Татьяна:

    Елена, спасибо вам за интересную и полезную статью. На моём блоге постов пока мало, но ведь это только пока, а потом мне такая постраничная навигация тоже ох как понадобиться. И ещё, рекомендую вам сменить подпись «админ» на логин или собственное имя.

  57. Спасибо Лена за статью .Слежу постоянно за вашими обновлениями на сайте через твиттер. Нужная статья, много искал по этому поводу материала в интернете.Вы чуть запоздали только вчера установил этот плагин.Не совсем подходят кнопки к моему сайту ,попробовал настроить через плагин wp-pagenavi style,но он почему то не работает у меня ,получается какая то белиберда.Первую страницу показывает нормально .а при переключении на вторую все сбивается.Оставил пока один плагин WP-PageNavi 2.82.Все же лучше и удобнее ,чем было раньше.

  58. Андрей! Да, статья очень давно написана, если бы Вы посмотрели структуру моего сайта, то давно бы ее и нашли. Советую посмотреть структуру, может еще что-то нужное найдете.

  59. Вношу свою лепту в просветительское дело: Мой сайт погиб при установке постраничной навигации. Вначале я установила плагин WP-PageNavi 2.82, активировала. Посмотрела — на сайте никакой реакции. Затем решила через functions.php — и больше мой сайт не открылся. Понимаю, что где-то согрешила, но где — не могу сориентироваться. На другой свой домен установила ту же тему и скопировала из него исходный код functions.php, но, увы, и это не помогло. Выдает ошибку сервера и ничего не хочет делать. На хостинге у меня не было резервной копии, хорошо, хоть наполнение было заархивировано.

  60. Даже странно — у нас одинаковая тема, но у меня плагин WP-PageNavi 2.82 никак не становится — видно с чем-то конфликтует, а жаль — у него постраничная навигация эффектнее — мне пришлось установить WP Page Numbers — он стал бесконфликтно на мой сайт.

  61. Юрий:

    Спасибо за плагин. Теперь и у меня есть постраничная навигация.

  62. Артем:

    Спасибо полезный плагин.
    Можно ли установить постраничную навигацию в рубриках сайта?

  63. Артем! Возможно все, нужно только выбрать в редакторе нужный шаблон страницы и поместить запускающий код туда, действуем аналогично В разных темах Вордпресс это реализовано по-разному. У меня это шаблон страницы для архивов. А свой поищите в редакторе админки.

  64. Артем:

    Спасибо Вам Елена за совет поставил код в шаблоне страницы для архивов и все заработало

  65. Натаья:

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

  66. Наталья! Я перешла на Ваш сайт и убедилась, что у Вас все получилось. Поздравляю!

  67. Натаья:

    Елена! Простите, но я с тем же вопросом. В прошлый раз у меня «получилось», так как я меняла тему и обращалась на хостинг. Они мне восстановили сайт. Но в другой теме не было тега «далее» при переходе в рубрики, архивы. Входишь в рубрику, от каждой статьи начало, а в продолжение не попасть. Я задавала вопрос в группу поддержки Твоего старта,опять посоветовали сменить тему. Сейчас я вернула первую тему, без навигации. Не знаю. что делать дальше.Топчусь на месте. Пробую следовать вашим советам, изменений нет.

  68. Наталья! Напрасно Вы отказались от темы, в которой при переходе в рубрики или архивы в конце анонса не стоит ссылка на продолжение статьи. В таком случае открыть полную статью можно, нажав на ее заголовок. Кстати, моя тема WordPress (шаблон) именно такая.
    И у многих стоит именно такой формат.
    Если что-то не получается, то нужно отложить до озарения.
    Без постраничной навигации вполне можно обойтись. Ну, или обратитесь к специалистам, чтобы они помогли.

  69. Здравствуйте! Через пару лет стал исследовать свой сайт, перехожу по постраничной навигации на сайте и на каждой записи сверху показывается слово архив. Правильно ли это? Вроде раньше этого не было. Не получится из этих записей дубли?

  70. Юрий! Такова особенность Вашего шаблона (темы) Вордпресс. Старые публикации он показывает, как архивные. Не вижу в этом проблем для успешного функционирования Вашего сайта.

  71. Спасибо, успокоили! А то дубли растут в Google, как грибы, и не понятно на что грешить? Убираются только временно.

  72. Здравствуйте! А если я закрою Disallow archive в robots.txt:, то будут ли индексироваться все записи моего сайта?

  73. юрий! У меня архивы не закрыты. Экспериментировать не советую.

  74. Спасибо! Успокоили.

  75. Добрый день.
    У меня тема Education Hub
    Никак не найду в каком файле поменять постраничную навигацию.
    Поможете?
    Заранее спасибо!

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *