Как убрать пагинацию в меню


Содержание материала:

WordPress: Как убрать пункты меню в WordPress админке

Как убрать верхнее меню WordPress

Начну с самой простой задачи. Речь идет о верхней WordPress панели для работы с сайтом, которая отображается не только в амдинке, но и во фронтенде. Соответствующая опция находится в разделе «Пользователи» — на странице редактирования настроек:

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

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

Размещаете строки в functions.php. Есть еще один вариант, позволяющий убрать верхнюю панель в WordPress всем кроме администратора:

В принципе, никакой особо полезной информации/действий она не содержит, всегда деактивирую данную штуку.

Как скрыть пункты меню в WordPress админке

Для этих целей в системе есть 2 функции:

  • remove_menu_page — удаляет элементы первого уровня (разделы)
  • remove_submenu_page — избавляется от подстраниц (второго уровня).

Разработчики советуют вызывать их исключительно с помощью хука admin_menu иначе могут возникнуть ошибки. Важно(!) Физически страницы настроек никуда не деваются, вы просто прячете их, т.е. по прямым ссылкам они будут доступны! Примеры кодов ниже работают для версий WP 3.1+ (в противном случае гуглите функцию unset). Дополнительно можете почитать как скрыть страницу в Вордпресс фронтенде (для посетителей).

Итак, в качестве параметра для remove_menu_page вставляете название файла, отвечающего за тот или иной раздел, например:

Две последние строки отвечают за скрытие разделов Contact form 7 и фреймворка Cherry.

Чтобы узнать какие названия разделов используются в плагинах, попробуйте добакить хак:

В админке отобразится массив данных, где элементы показывают опции по каждому из пунктов меню, например:

Вам нужно значение в [2] то есть в параметрах функции remove_menu_page указываете woocommerce-checkout-manager. Аналогично по всем остальным элементам.

У страниц (edit.php?post_type=page) тоже немного необычный формат. Если на сайте есть другие таксономии, применяете конструкцию:

Где custom-post-type-name — название таксономии. Когда нужно удалить в меню страницу Wodpress модуля вида wp-admin/admin.php?page=some_pageslug, поможет код:

Для подстраниц формат записи функции несколько иной, но принцип похожий — подставляете в качестве параметров сначала название раздела, а потом конкретного подпункта:

Фишка применения remove_submenu_page в том, что вы сможете скрыть пункт меню в админке WordPress второго уровня, а сам раздел (Посты, Внешний вид) останется.

Также вы могли заметить, что в последнем случае вызова add_action я использовал приоритет = 999. Дело в том, что некоторые строки не всегда срабатывают без него — насколько я помню, это касалось модулей и раздела Внешний вид. В сети находил варианты 99, 500, но 999 надежнее.

Убрать специальные разделы таксономий темы

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

В моем случае код находится в файле theme-init.php. Открываем и смотрим его содержимое — там после задания соответствующих параметров таксономий идет активация через add_action. Чтобы от них избавиться, просто закомментируйте эти строки, если подобные функции на сайте не нужны.

Как убрать страницу настройщика тем

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

Данный код размещаете в файле функций. Он добавляет display:none; для стиля, который используется в пункте настройщика (hide-if-no-customize). Возможно, в какой-то версии системы там будет другой class/id, смотрите код страницы.

Убираем меню в WordPress для конкретного пользователя

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

В данном случае условие срабатывает для двух профилей с почтой [email protected] и [email protected] Важно(!) Не забудьте поменять эти значения на свои.

Как удалить меню в WP по ролям

У каждой роли пользователей в WordPress (админ, автор, редактор) есть определенные возможности: правка готовых постов, удаление чужих записей и т.п. С помощью функции current_user_can и условного оператора вы можете реализовывать нужные задачи:

Код размещаете в файле функций functions.php. Здесь проверяются условия с помощью current_user_can — может ли текущий юзер менять настройки или удалять посты. Например, последняя задача недоступна для роли Автор, поэтому будет выполнен соответствующий (третий) блок исключений (которые и получат все авторы).

Вот еще один сниппет. Дабы скрыть меню Инструменты из WordPress для всех, кто не является админом, используйте:

Думаю, суть вы уловили.

Admin Menu Editor для модификации меню

Я хотел решить вопрос именно с помощью кода, но традиционно под нашу задачу есть и специальные плагины для WordPress админки. Один из них — Admin Menu Editor. Он позволяет:

  • Редактировать заголовки, иконки, CSS для навигации в системе.
  • Переставлять пункты местами с помощью перетаскивания, в том числе и меняя их иерархию.
  • Показывать и скрывать меню в WordPress.
  • Устанавливать разные разрешения доступа.
  • Создавать новые разделы и подпункты.

В целом инструмент интересный, хотя в нем нужно будет разбираться. Я пытался «поиграться» там с ролями юзеров и скрытием определенных разделов, но если честно, у меня мало что получилось. Решил вернуться к обычным сниппетам. Возможно, в будущем рассмотрю его детальнее. Модуль весьма популярный — около 200 тысяч загрузок и высокие оценки.

Кстати, можете также оценить плагин WP Responsive Menu, который позволяет скрывать нужные элементы навигации для версии сайта под смартфоны/планшеты.

Пагинация на сайте Joomla: постраничная навигация Joomla

От автора

Пагинация на сайте Joomla это разбиение сайта на страницы, если они не умещаются на одной странице. Я уверен, вам знакома пагинация на сайте Joomla. Это выведенные цифры, внизу страниц, которые помогают листать содержимое сайта.

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

Термин пагинация (нумерация страниц, разбивка на страницы) не употребляется в документации joomla. Официально этот вид навигации сайта называется «Разбиение на страницы». Именно этот пункт нужно искать для его настроек в административной панели сайта. Но, по-моему, этот термин вполне оправдан, так как он основан на классе PHP Pagination, и именно файл Pagination.php в коде сайта определяют интерфейс разбиения на страницы с отображением результатов в базе данных.

Настройка пагинации в административной панели сайта

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

Настройка пагинации в менеджере материалов

В административной панели сайта Откройте вкладку Расширения -> Менеджер материалов -> Общие настройки.

В строке Разбиение на страницы вы можете выбрать из выпадающего списка: Скрыть (не показывать пагинацию), Показать, Авто. Авто это автоматическое разбиение на страницы, заложенное в коде Joomla или коде текущего шаблона.

Эти настройки являются общими для макетов Список, Блог и Избранные, однако они могут быть переопределены в параметрах вывода категорий в пункте меню.

Настройка пагинации в пункте меню

Настраивать разбиение на страницы можно только в макетах, которые создают списки и то не все. Настроить разбиение на страницы можно настроить в следующих списках:

  • Список категорий;
  • Блог категорий;
  • Список ссылок /Список категорий ссылок;
  • Список ссылок/Список ссылок категории;
  • Ленты новостей/Список всех категорий лент новостей;
  • Ленты новостей/Список лент новостей категории.

Расширения->Менеджер Меню -> Создать (пункт меню)

Настраивается вывод разбиения на страницы при создании пункта меню. Находится настройка разбиения на страницы в пункте «Менеджер меню»:

Создание пункта меню ->Выбор типа пункта Меню -> Дополнительные параметры-> Параметры макета или Параметры списка (зависит от типа пункта меню).

Примечание: В этих настройках появляется еще один пункт: Результаты разбиения на страницы (2 на фото). Этот пункт позволяет вывести в форме пагинации сообщение о текущей странице. Например: Страница 1 из 11, как но фото. В параметрах настройки можно выбрать, показывать это сообщение или нет.

Отличие пагинации от навигации

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

Пагинация в коде Joomla

В PHP есть класс, который создает интерфейс разбиения на страницы. Это >/public_html/libraries/cms/pagination/pagination.php и может быть в шаблоне сайта.

Вывод пагинации (разбиение на страницы) в коде Joomla

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

/public_html/components/com_content/views/category/tmpl/blog.php и других файлах этого каталога.

Или в каталоге рабочей темы: /httpdocs/templates/yougrids/html/com_content/category

CSS пагинации

Внешний вид интерфейса «Разбиения на страницы» задается в файлах css вашего рабочего шаблона Joomla и зависит от верстки шаблона. Чтобы найти файл с элементом стиля pagination можно посмотреть код элемента в браузере, а проще воспользоваться правой кнопкой мыши. Для этого наведите курсор на элемент пагинатора, нажмите правую кнопку мыши и выберите в меню «Просмотр кода элемент».

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

Хаки для пагинации сайта

В качестве примера хака для пагинации сайта приведу пример изменения количества страниц выведенных в пагинаторе. По умолчанию выводится 10 страниц. Чтобы увеличить количество страниц в интерфейсе разделения на страницы откройте в текстовом редакторе файл pagination.php. Найдите строку

И поменяйте 10 страниц, например на 50, если конечно, у вас столько контента на сайте.

Я привел этот хак, как пример работы с файлом pagination.php. Но такое редактирование, пропадет при следующем обновлении Joomla, и это обновление временное. Чтобы такого не происходило при каждом обновлении Joomla, нужно сделать предопределение выполнения функции в шаблоне сайта.

Топ-пост этого месяца:  Передача массива в функцию в TypeScript указание имени без индекса, пример и результат компиляции

Если коротко, то для этого в рабочем шаблоне создается папка html. В эту папку копируются нужный системный файл. Скопированный файл редактируется. В системе предопределяется вывод элементов. Система при вызове элемента, сначала будет искать файл в папке html текущего шаблона, если его не найдет, то воспользуется системным файлом для вызова этого элемента. Файлы, которые будут у вас в папке html не будут меняться при каждом обновлении Joomla. Подробно, постараюсь написать другую статью.

Примечание. Это простой и в принципе, безопасный хак. Но в любом случае, перед любым редактированием кода сайта делайте резервную копию. Как минимум того файла, который редактируете.

На этом всё! Тема пагинация на сайте Joomla в этой статье исчерпана.

Joomla 3.x. Как настроить пагинацию (нумерацию страниц)

Этот туториал покажет, как настроить пагинацию (нумерацию страниц) в Joomla 3.x.

На скриншоте ниже выделена пагинация на странице Блог. Мы отредактируем настройки пагинации на данной странице.

В админ панели в Меню — Главное меню (Menus — Main menu) выберите необходимый пункт меню (в нашем случае, Blog). Настройки пагинации находятся во вкладке Шаблон блога (Blog Layout ). Здесь вы можете включить опции Разбиение на страницы (Pagintation) и Результаты разбиения на страницы ( Pagination Results), отредактировать количество Статей во вcю ширину (Leading Articles), Колонок (Columns) и Только введений (Intro articles). См. скриншот ниже.

Сохраните изменения и обновите страницу. Мы изменили настройки пагинации.

Вы также можете воспользоваться детальным видео туториалом:

Оптимизация страниц пагинации интернет-магазина — подробная инструкция

Как правильно оптимизировать страницы пагинации — одна из самых комментируемых тем на всех SEO-форумах. Попробуем разобраться в сути вопроса.

Что такое страницы пагинации и зачем они нужны?

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

Как выглядят страницы пагинации?

Обычно на сайтах интернет-магазинов, досках объявлений, блогах пагинация выглядит так:

Как оптимизировать страницы пагинации?

Google советует любой из трех вариантов:

  • ничего не делать;
  • настроить rel=»canonical» со всех страниц пагинации, включая первую, на страницу со всеми товарами — pageall;
  • использовать атрибуты next, prev, чтобы показать связь между страницами пагинации (было актуально до марта 2020 года).

SEO-специалисты практикуют и другие методы:

  • закрывают от сканирования с помощью размещения либо запрещают к индексированию в файле robots.txt (при этом robots не является директивой).
  • на всех страницах пагинации указывают rel=»canonical» на первую (основную) страницу.

Не рекомендую использовать два варианта:

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

Не существует 100% гарантии, что робот сможет просканировать страницы карточек товаров, ссылки на которые находятся на закрытых для индексирования страницах пагинации. Этот способ стоит использовать, только если присутствует большое количество дублей и нет возможности сделать страницы уникальными.

Но в остальных случаях:

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

Рассмотрим три популярных варианта.

1. Настройка rel=»canonical» на страницу со всеми товарами (pageall)

1.1. В случае наличия страницы со всеми товарами — pageall — необходимо настроить rel=»canonical» со всех страниц пагинации, включая первую, на эту страницу.

Например, со страницы https://site.com/category/page-2/ должен быть настроен .

Так вы покажете поисковикам (и Google, и Яндекс), что существует страница, которая содержит все страницы пагинации, и нужно индексировать именно её.

1.2. Оптимизированные тексты стоит размещать на странице со всеми товарами, но не дублировать на других страницах пагинации.

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

Кроме того, на большинстве CMS реализовать этот метод практически невозможно.

2. Настройка rel=»canonical” со всех страниц пагинации на первую (основную) страницу

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

Например, на сайте есть страницы пагинации:

Но при этом со страниц site.com/category/page-2/, site.com/category/page-3/ и других при возвращении на первую, вместо site.com/category/ ссылка ведет на site.com/category/page-1/.

Страница site.com/category/page-1/ в таком случае будет дублем site.com/category/.

Необходимо убрать из ссылок на основную страницу элемент page-1, а также настроить 301 редирект со страниц с таким параметром на первую страницу категории.

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

2.3. Настроить со всех страниц пагинации rel=”canonical” на основную страницу пагинации. Например, на странице https://site.com/category/page-2/ должен быть .

2.4. Сгенерировать уникальные метатеги (Title, Description, Keywords) для страниц пагинации на основе шаблона.

Title страниц пагинации = [Title основной страницы пагинации] — страница [N],

где N — номер страницы пагинации.

Этот метод практически полностью решает проблему дублирования страницами пагинации основных страниц, рекомендуется Яндексом, а в списке рекомендуемых Google его нет.

3. Использование атрибутов rel=»prev» и rel=»next»

Ранее Google рекомендовал использовать оптимизацию страниц пагинации с использованием атрибутов next, prev. Они необходимы для того, чтобы показать поисковым системам, что содержание данных страниц логически связано.

Однако в марте 2020 года представители поисковой системы признали, что более не поддерживают данный атрибут. Вместо rel=next/prev Google теперь рекомендует вебмастерам помещать свой контент на одну страницу, а не разбивать его на несколько страниц, однако важно помнить про скорость загрузки страницы, поэтому можно такую рекомендацию использовать при небольшом количестве товаров.

Таким образом, настраивать атрибуты prev, next уже не нужно. Поэтому, наиболее приоритетным способом оптимизации страниц пагинации является настройка canonical со страниц пагинации на основную.

Важно: даже если страницы на сайте подгружаются с помощью AJAX-прокрутки, то есть товары подгружаются по мере того, как вы скроллите страницу, это не значит, что для поисковика все так же.

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

Выводы

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

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

Yoast SEO. Как закрыть страницы пагинации и добавить ключевые слова

В плагине Yoast с версии 6.3 теперь нет вкладки Другое, а значит нет возможности закрыть страницы пагинации и нет возможности добавлять ключевые слова. У многих с этим возникли проблемы, хотя не понимаю зачем вообще такой функционал нужен. Поисковики и без него прекрасно все индексируют и никаких дублей нет. По крайней мере, по моим наблюдениям…

  • Как закрыть от индексации страницы пагинации?
  • Надо ли закрывать от индексации страницы пагинации?
  • Как вернуть добавление ключевых слов после обновления Yoast?
  • Резюме

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

Как закрыть от индексации страницы пагинации?

Тут все просто, проверяем что это страница пагинации и подсовываем ей метатег robots

Вот и все. До кучи, можно еще выключить канонические ссылки и теги rel=»prev» и rel=»next» , чтобы поисковые системы не вводить в заблуждение.

Надо ли закрывать от индексации страницы пагинации?

Вопрос на миллион! Точно никто не говорит, сколько людей столько и мнений. Но есть докуметация поисковиков.

Гугл — молоток, все прекрасно понимает. Умеет определять теги rel=»prev» и rel=»next» , что как раз и позволяет не закрывать от индексации страницы пагинации.

В статье про обновление Yoast 6.3 есть ссылки на источники почитайте, многое станет понятнее

Яндекс

Тук как обычно, точно ничего не говорят. Вроде и rel=»canonical» понимают, но только как рекомендации. Погуглил немного. Есть два подхода

  1. Закрывать страницы пагинации — однозначно и обязательно
  2. Закрывать не надо. Но требуется:
    • чтобы в теге rel=»canonical» сслыки вели на главную
    • делать разные заголовки и описание в title и description для каждой страницы пагинации

Разные заголовки и описание можно добавить через настройки Yoast используя специальные переменные. Идем SEO → Заголовки и метаданные → Таксономии и добавляем нужные переменные. Должно быть так

Тогда в исходном коде будет так, при условии что у вас заполнено описание для рубрик

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

Как вернуть добавление ключевых слов после обновления Yoast?

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

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

Можно использовать любой из списка, будет отличаться только вывод полей. Рекомендую ACF (Advanced Custom Fields) показывать буду на нем.

После установки плагина появиться дополнительное меню

Создаем группу полей и в ней создаем одно текстовое поле.

Обязательно указываем: ярлык поля на русском, имя поля — на латинице (это важно!). И желательно для имени поля использовать префикс.

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

В данном случае, метабокс появиться в записях, страницах и рубриках.

Собственно и все. Теперь в записях появиться метабокс

Теперь осталось вывести значения этого поля. Более менее универсальный код (проверялся только с ACF).

Резюме

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

На этом все. Подписывайтесь на обновления, поделитесь статьей в соцсетях.

Всем удачи! Пока-пока.

Автор и ведущий проекта «Финты WordPress». WordPress & WooCommerce разработчик. Четыре года создаю плагины и темы. В свободное время пишу статьи, видеообзоры, гайды.

Избавляемся от дублей мета-тегов на страницах пагинации WP

Страницы пагинации на сайте – головная боль оптимизаторов. На WordPress это решается просто – с помощью плагина Yoast Seo. Даже в бесплатной версии есть возможность указать канонический адрес в настройках каждой страницы. И это убережет от такого неприятного момента, как дубли мета-тегов. Однако у меня на клиентском сайте они все равно появились, что обнаружилось при очередной пробежке по вкладкам поисковой консоли Гугла. Ошибку признаю, допустила ее по такой причине: при переносе сайта с конструктора на вордпресс контента в формате post (записей) практически не было. Предосторожность на первое время была все же предпринята: записей в настройках выставила 20 (по умолчанию – 10). А анонсы в архивах всегда делаю короткими.

Мой «рабовладелец» содержит немалый штат, в том числе и копирайтеров. Поэтому ресурс разрастается быстро, и в рубриках появились page/2/, page/3/. Гугл пока увидел первую. При первоначальных настройках плагина Yoast подвела недальновидность — просто закрыла страницы пагинации от индексации, что совершенно неправильно. Такой контент обязательно должен индексироваться – по сути это же не дубли, содержимое меняется и отличается на каждой page/X/ и page/Y/ так часто, как переваливает количество записей за установленную цифру.

Код выглядел так:

Что интересно, в настройках Yoast Seo в самой рубрике, чего моя рука, кроме прописывания мета-заголовков, не касалась, по умолчанию стояло index — в коде был noindex. Странное несоответствие – в глобальных настройках стоит запрет, в коде html тоже, в конкретной рубрике запрета нет. И Гугл решил страницу проиндексировать.

Осталось действовать: открыть редактирование рубрики, нажать на шестеренку и указать адрес первой страницы в чистом виде, как он есть.

В шаблоне вордпресс generatepress, к счастью, при возвращении на первую страницу рубрики не появляется page/1/, а вот в других темах такое встречала. Надеюсь, yoast благополучно справляется и с такой ссылкой.

Непонятно одно: canonical настраивается легко, но в плагине зачем-то выведены еще и теги «prev» и «next». Считается, что одновременное применение такой каши на страницах пагинации – не лучший вариант. Но дубли мета-тегов на сайте точно не нужны. Вредно для продвижения.

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

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

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

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

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

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


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

Вот это я понимаю — аргументация! )) Привет, Сергей! Вот и я закрывала страницы пагинации от индексации и в плагине, и в файле robots. Но Гугл как-то их вытащил на свет и поругался на дубли мета-тегов. Пусть, по крайней мере, видит, что у этих страниц есть каноническая. А вообще боты сами прекрасно разбираются, что показывать в выдаче на запрос — категорию ли, запись ли. В интернет-магазинах ситуация в корне отличается — там относительно уникальный контент на каждой странице пагинации. Их закрывать в disallow никак нельзя. Нет большого ИМ под рукой, чтобы можно было проанализировать и не гадать на кофейной гуще, нужны ли в поиске страницы пагинации ИМ.

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

Вот только в роботсе я ничего не закрываю. У меня там все открыто, поскольку страницы закрываю не через роботс, а через исходный код. К тому же если закрыть через роботс, то робот может не попасть на саму страницу и только не узнать, нужно ли ее закрывать от индексации или нет.
Поэтому когда при проверке индекса сайта могут всплывать такие мусорные страницы с описанием типа «Эта страница запрещена в роботсе….»
В общем, для инфосайтов нужно в роботсе все открывать чтобы сам робот смог попасть на все страницы. А закрывать нужно уже с помощью мета роботс в исходном коде страниц. Вот тогда будет нормально. Робот зайдет на страницу и уже наверняка будет знать, что она должна быть закрыта к индексации. Потом и мусора этого не будет.

А еще советую для тайтла страниц пагинации на конце прописать типа (страница 2 из 5). Там просто в настройках сео плагина нужно добавить атрибут. Это для робота будет еще более понятнее. Хотя он и так должен знать.

А что вы скажете о страницах комментариев?
Поясню, если на главной с виджета «последние комментарии» перейти на коммент, то будет переход на страницу с #comment на конце. Это дубли? И как с ними бороться?

Думаю, с дублями нужно бороться только в случае, если используются древовидные комментарии. Вот Replytocom допускать опасно. А обычный комментарий, откуда бы Вы ни перешли, будет иметь один адрес. Ко всему, что после решетки в адресе, поисковики понимают, как относиться.

а зря. посмотрите на том же генератепресс. поставьте виджет «последние комментарии», и перейдите по ссылке, и увидете ужасающую картину. а ведь это адреса присутствуют независимо от того, включен виджет или нет

Не могу судить так, огульно. На каждом сайте море ссылок, которые выполняют роль служебных. У меня на сайтах, где эта тема, комментариев нет вообще. Да и вообще не вижу смысла выводить подобные виджеты. Понимаю, популярные записи, для привлечения к ним внимания. Но если проблема есть, она решается однозначно, или запретом в файле robots, или правкой шаблона. Сегодня, например, на одном сайте обнаружила, что в анонсах в рубриках не выводятся альты картинок, хотя сами картинки есть. Программист поправил за 5 минут. Меня тоже бесят все эти мелочи. ))

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

А страница комментариев (если для wordpress), то это будет comment-page, а не только #comment.
Вот тут могут быть дубли, так как эта CMS изначально плохо оптимизированна для комментариев. Но если все сделать правильно, то проблем не должно быть.

Я у себя на блоге сделал такую разбивку комментариев. Вот для примера самый комментируемый пост:

Не выдержала душа поэта? )) Спасибо, Сережа! А меня тут задергали немножко в быту, даже не сосредоточиться, чтобы сформулировать понятно. Коротко и ясно: якорь!

хорошо, успокоили. а то я запаниковал. посмотрю ваш сайт, тоже интересно

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

Можете показать оба варианта ссылок? Лучше на почту.

Все о WEB программировании

WEB программирование от А до Я

Заказать сайт:

Социальные сети:

Партнеры:

Как настроить пагинацию в WordPress

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

Первое, что нам необходимо сделать — это скачать плагин. Я долго выбирал плагин из множества плагинов позволяющих сделать пагинацию. Но один сильно грузит систему, второй какой-то не адекватный. И мой выбор остановился на плагине для WordPress WP-Paginate, который Вы можете скачать из официального репазитория. Плагин прост в установке. И имеет базовые настройки, которые мы рассмотрим, чуть ниже. Переходим к настройке пагинации.

Второе, что нам необходимо сделать это настроить в самой CMS сколько постов мы хотим выводить на странице. Для этого в админке переходим в «Параметры»->«Чтение» и в поле «На страницах блога отображать не более» указываем необходимое число. Так, у меня стоит 5, т.е. на странице будет отображаться не более пяти постов. И жмем «Сохранить изменения».

Отлично, теперь переходим к третьему шагу. В админке переходим «Плагины»->«Установленные» и находим наш плагин WP-Paginate. Активируем его. Для этого жмем по ссылке под названием плагина «Активировать»

Четвертое – настраиваем плагин. Для этого мы можем тут же нажать «Settings»

Или в админке перейти «Параметры»->«WP-Paginate»

Какой способ выбрать Вам решать. Попадаем в окно настроек плагина пагинации.

  • Pagination Label – указываем текст, который будет находиться перед списком страниц.
  • Previous Page – указываем текст ссылки на предыдущую страницу
  • Next Page – указываем текст ссылки на следующую страницу
  • Before Markup и After Markup – указываем html-код, который будет находиться перед и после списка страниц.
  • Markup Display – если мы поставим галочку, то html-код который мы указали выше будет отображаться даже, если список страниц пуст
  • Page Range – количество страниц отображаемых после текущей страницы
  • Page Anchors – количество ссылок, которые необходимо показывать в начале и в конце спсика.
  • Page Gap – минимальное количество страниц перед …

После изменения всех настроек жмем «Save Changes»

Все наш плагин настроен. Теперь плагин пагинации необходимо отобразить на странице.

Пятый шаг. Переходим в наш шаблон. Открываем файл в котором перечисляются посты. В моем случае это index.php, у Вас может быть loop.php или другой. И в то место, где мы хотим вывести пагинацию вставляем следующий код:

Т.е. мы в начале проверяем наличие функции wp_paginate и если она существует, то вызываем ее.

Все на нашем сайте появилась пагинация.

И последний заключительный шестой шаг – приведение пагинации к нашему дизайну. Для этого будем «играться» с CSS.

Наш список страниц будет обрамлен в html-код, который мы указали в полях Before Markup и After Markup. В нашем случае это div c классом navigation. Дальше идет спсиок

    с классом wp-paginate. Дальше идут
    :

  • С классом title – это текст перед списком страниц
  • С классом prev – это ссылка на предыдущую страницу
  • C классом page – ссылка на страницу
  • С классом page и current – это текущая страница
  • С классом next – ссылка на следующую страницу

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

Таким образом всего за шесть шагов мы настроили пагинацию на нашем сайте под управлением CMS WordPress.

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

Сегодня вы узнаете как можно сделать постраничную навигацию (пагинацию) в wordpress. Обычно на страничке какой-нибудь рубрики (категории) выводится последние 10 записей (по умолчанию). Это значение вы можете изменить на своё, но это не главное. Представьте себе если у вас в одной из рубрик больше чем 10 записей, например 65? Как быть тогда? Согласитесь если в настройках указать вывод всех записей на одной страничке посетителю сайта будет неудобно каждый раз проматывать страницу до конца.

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

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

Так один гениальный разработчик (каким я его считаю) сделал вот такую функцию:

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

Чтобы не мучатся со стилями просто зайдите по ссылке на первоисточник: http://wp-kama.ru/id_8/alternativa-wp-pagenavi-bez-lishnix-zaprosov-k-bd-ili-keshu.html Почему я отметил этот способ? Да потому что автор проделал огромную работу, сам бы я в жизни не догадался до такого.

Тег the_posts_pagination() в WordPress

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

$args это массив. Вообще надо сказать, что тег the_posts_pagination() появился совсем недавно в версии WP 4.1.0. У себя на сайте я использую его после цикла wordpress:

И на всякий случай написал код стилей CSS:

В результате вот что у меня получилось:

Единственное я убрал заголовок h2 с помощью CSS, со временем я это обязательно исправлю. Это можно сделать с помощью вот такого кода:

Опять же спасибо Тимуру Камаеву за этот код. Кому понравилась статья не забываем делиться с друзьями информацией.

Все права на сайт принадлежат Александру Побединскому.

Копирование любых материалов сайта возможно только с разрешения автора или при указании ссылки на источник.

Вопросы и ответы

Сайдбар/Виджеты

Почему не работает виджет вывода постов по просмотрам?

Виджет сортирует посты по произвольному полю views, а сама тема просмотры статей не считает. Необходимо установить плагин, например WP-PostViews.

Как вставить виджет со страницей Facebook?

Сгенерируйте необходимый код тут и вставьте этот код в виджет Текст в разделе Внешний вид > Виджеты.

Как вывести меню из сайдбара\рубрики в мобильном меню?

Перейдите в админ-панели в раздел Внешний вид > Виджеты и добавьте к необходимому виджету (рубрики или меню) класс widget-mobile-menu .

Как включить/показать сайдбар на мобильном?

Перейдите Внешний вид > Настроить > Блоки > Сайдбар и отметьте опцию Включить сайдбар на мобильном .

Как вывести записи в сайдбаре с миниатюрой?

1. Перейдите в админ-меню Внешний вид > Виджеты и перетащите виджет Вывод статей в нужное место сайдбара.

2. В настройках виджета укажите заголовок, сортировку, вывод определенных постов, их количество и отображение (обычное или компактное).

3. Нажмите кнопку Сохранить.

Миниатюры

Нет миниатюр

Если миниатюры на сайте не отображаются (например, на главной), то скорее всего они не заданы у записей. Откройте в админ-панели любую запись. В правой части экрана будет поле Миниатюра записи или Изображение записи. Необходимо просто установить необходимую миниатюру.

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

Миниатюры неправильного размера (растянутые, квадратные, обрезанные и т.д.)

Проблема актуальна актуальна для блогов, где ранее уже был контент. Для этого необходимо пересоздать миниатюры. Установите и активируйте плагин Regenerate Thumbnails, затем перейдите в раздел Инструменты > Пересоздать миниатюры. Нажмите Пересоздать все миниатюры и немного подождите, пока закончится процесс.

Как убрать автоматический вывод миниатюры на странице записи?

​Чтобы убрать миниатюру в записи, необходимо в админ-панели перейти Внешний вид > Настроить >​ Блоки > ​Запись и в блоке Спрятать элементы ​отметить пункт Миниатюра.

Содержание/Оглавление

Как вывести содержание поста (оглавление)?

В теме есть встроенные возможности вывода содержания (оглавления). Перейдите в админ-панели Внешний вид > Настроить > Модули > Содержание, активируйте опцию По умолчанию открыто и выберите, где будет выводится оглавление.

Содержание выводится, если в тексте записи или страницы есть 3 и больше заголовков H2, H3 или H4. Чтобы содержание выводилось от 2-х заголовков, установите и активируйте плагин ProFunctions и в файл profunctions.php добавьте код:

По умолчанию в содержании выводятся заголовки H1, H2, H3, H4. Чтобы исключить или добавить другие заголовоки (например, добавить H5), установите и активируйте плагин ProFunctions и в файл profunctions.php добавьте код:

Как вывести содержание в начале статьи?

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

  1. Перейдите Внешний вид > Настроить > Модули > Содержание и активируйте опцию Вывести содержание в начале записи .
  2. Установите наш пустой плагин ProFunctions и добавьте туда код:

Как изменить заголовок содержания?

Изменить заголовок «Содержание» можно 2-мя способами.

  1. Перейдите Внешний вид > Настроить > Модули > Содержание и в опции Заголовок содержания введите нужный текст .
  2. Установите наш пустой плагин ProFunctions и добавьте туда код:

Комментарии

Как сделать, чтобы теги скрытия ссылки [mask_link][/mask_link] работали в комментариях?

Установите наш пустой плагин ProFunctions и добавьте туда код:

Ссылки в комментариях должны быть такого вида:

Микроразметка

Что означает ошибка publisher в микроразметке?

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

Как добавить значения address и telephone для микроразметки publisher?

Перейдите Внешний вид > Настроить > Расширенные настройки и введите соответствующие значения.

Социальные сети

Почему не отображаются иконки на профили в социальных сетях?

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

Как вставить Instagram запись?

Просто вставьте в новой строке ссылку на запись Instagram, например, https://www.instagram.com/p/BRpG6BIBNxg/, и она сама преобразуется в запись:

Оформление контента

Для чего нужны чекбоксы в ингредиентах?

Чекбоксы в ингредиентах нужны для того, чтобы люди могли отмечать ингредиенты, которые они подготовили или которые у них уже есть.

Хлебные крошки

Как вывести хлебные крошки?

Перейдите Внешний вид > Настроить > Модули > Хлебные крошки и активируйте опцию Включить хлебные крошки .

Как показать хлебные крошки в архивах?

Перейдите Внешний вид > Настроить > Модули > Хлебные крошки и активируйте опцию Показать хлебные крошки в архивах .

Другое

Поддерживает ли тема английский язык?

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

Как вносить изменения в шаблон?

Только через настройки темы в админ-панели Внешний вид > Настроить или через создание дочерней темы.

Почему не показывается количество просмотров?

Необходимо установить и активировать плагин WP-PostViews. В настройках плагина в шаблоне просмотра указать %VIEW_COUNT% .

Как сделать вывод постов из плагина YARPP?

Если Вы хотите заменить встроенный вывод похожих постов на плагин YARPP, но при этом сохранить внешний вид, Вам необходимо:

1. Выставить такие настройки в плагине:

  1. Отключаем автоматический вывод YARPP в конце поста
  2. Выбираем количество постов на вывод
  3. Выбираем Custom, чтобы задать собственный вывод
  4. Проверяем, чтобы шаблон был от WPShop

Если Вы используете дочернюю тему — скопируйте в неё файл yarpp-template-wpshop.php

2. Установить плагин ProFunctions или добавить в functions.php дочерней темы код, отключающий стандартный вывод похожих записей:

/**
* Включить в похожих записях плагин YARPP вместо встроенных
*/
add_filter( ‘cook_it_yarpp_enabled’, ‘__return_true’ );

Как увеличить логотип?

Перейдите в Внешний вид > Настроить > Дополнительные стили и укажите код ниже. Вы можете заменить значение 400px на ширину , а 150px — на высоту своего логотипа.

Как добавить поиск в шапку сайта?

Способ 1. Перейдите Внешний вид > Настроить > Блоки > Шапка и отметьте опцию Показать поиск .

Способ 2. Установите наш пустой плагин ProFunctions и добавьте туда код:

Затем нажмите Внешний вид > Настроить > Блоки > Шапка и в блоках «HTML код #1» или «HTML код #2» добавьте шорткод [search].

Как закрыть от индексации страницы пагинации?

Чтобы закрыть от индексации страницы пагинации page/2, page/3 и т.д. установите наш пустой плагин ProFunctions и добавьте туда код:

Как добавить логотип?

В админ-панели перейдите в раздел Внешний вид > Настроить > Блоки > Шапка и в блоке Логотип добавьте нужное изображение.

Как добавить фавикон?

Сначала необходимо сгенерировать из картинки иконку с минимальным размером 512х512 пикселей. Затем в админ-панели перейти Внешний вид > Настроить > Свойства сайта и в блоке Иконка сайта загрузить иконку.

Урок 418 Правильная SEO оптимизация страниц пагинации

Всем привет! Есть в SEO, как кажутся, элементарные и очевидные вещи, но если немного разобраться в них, возникает много вопросов и нюансов, которые беспокоят владельцев проектов. Сегодня я хочу поговорить про страницы пагинации (или еще их называют страницами листинга). Хочется написать развернутый урок: что, зачем и почему, чтобы все разъяснить, как удалось это сделать с уроком про переход на https.

Я уже рассказывал на своем блоге, как сделать пагинацию в WordPress (там же и рассказывал, что такое постраничная навигация). Теперь пришло время показать, что нужно с ними делать с точки зрения SEO. Многих беспокоят следующие вопросы:

  • стоит ли их закрывать индексацию пагинации в robots.txt;
  • может стоит закрыть их с помощью meta name=»robots»;
  • или лучше использовать rel=canonical;
  • а может вообще их оставить открытыми для индексации;
  • ну и другие вопросы.

Страницы пагинации

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

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

  • карточек товаров;
  • информационных постов;
  • обсуждения на форумах.

к оглавлению ↑

Индексация пагинации

Лучше страницы пагинации не запрещать от индексирования, чтобы роботы доходили до как можно большего количества товаров/постов (особенно важно, когда у вас очень много товаров). Но опять же, несмотря на то, что страницы открыты для индексирования, я бы рекомендовал сделать так, чтобы они не участвовали в основном поиске. Я противник низкокачественных страниц в индексе и считаю, что в поиске должны быть только нужные страницы, и важность подобных страниц будет выше, нежели будет полно низкосортного контента. Как же тогда быть?

Вся сложность заключается в том, что у двух наиболее крупных поисковиков на нашем рынке (Яндекс и Google) разные требования. Давайте разберем их.

Требования Яндекса

Яндекс рекомендует ставить rel=canonical со второй, третьей и последующих страниц на первую (взял отсюда https://yandex.ru/blog/platon/2878):

Причем в данном случае проблем с индексацией товаров или постов не будет, так как rel=canonical не запрещает ходить роботам по страницам, но в индексе будет только основная страница в обоих поисковиках.

Требования Google

Гугл же рекомендует использовать теги rel=»prev» и rel=»next», чтобы указать логическую последовательность между URL (вот тут https://support.google.com/webmasters/answer/1663744?hl=ru&ref_topic=4617741):

И в тоже время, Google рекомендует rel=canonical ставить саму на себя (в той же справке по ссылке выше):

То есть Гугл не рекомендует, как это делает Яндекс, ставить каноникал на первую страницу, также он говорит, что это неправильно. Но по опыту замечено, что, если ставить rel=canonical на первую страницу, ничего критичного не происходит, сайты хорошо чувствуют себя в обоих поисковых системах.

И да, есть такой момент: Яндексу все равно на теги rel=prev и rel=next, он не понимает их и просто игнорирует.

А что же говорят SEOшники?

Мнений на эту тему очень много, приведу парочку.

Кто-то говорит, что каждую страницу пагинации нужно подтачивать под разные запросы. К примеру, первую страницу под «Купить ноутбук», вторую под «Купить ноутбук недорого», третью под «Купить ноутбук в интернет-магазине» и так далее. Не делайте так. Поисковики не настолько тупые, может быть это еще и работало лет 5-8 назад, но сейчас однозначно так не стоит делать.

А кто-то говорит запретить в robots.txt или использовать тег meta name=»robots» content=»noindex,follow». Я раньше тоже так делал, но это не совсем правильно, так как поведенческие факторы со страниц пагинации не будут передаваться. Да и Яндекс также говорит:

Я не продвигаю страницы категорий на блоге (а зря, я рассказывал про пользу правильной SEO-оптимизацию категорий), все руки не доходят, как-нибудь доберусь обязательно, уберу «noindex, follow». Тем, кто продвигает категории, рекомендую использовать инструкцию выше.

Дублирование в пагинации

Кстати, если Яндекс считает, что страницы пагинации — это дубли, то Google так не считает, ему главное указать rel=prev и rel=next. Если вы используете тег rel=canonical на основную страницу, то в индексе будет только она. Если же использовать только rel=prev и rel=next, страницы пагинации будут попадать в индекс поисковых систем.

Теги prev и next показывают роботу, что страницы связаны в логической последовательности, как бы это одна большая страница. Именно поэтому одновременно использовать rel prev/next и rel canonical на основную страницу — неправильно. То есть, если вы хотите указать и каноникал, и prev/next, тогда каноникал указываем только на саму страницу (саму на себя).

Как оформить страницы пагинации

Текст описания рубрики/категории нужно выводить только на первой странице, на остальных страницах пагинации не выводим. Это чтобы не было сильного дублирования, да и текста в первую очередь все равно выводятся для роботов. И пользователи, уже перешедшие на вторую и др. страницы, уже не заинтересованы в текстах + улучшение юзабилити.

Также рекомендую, чтобы Title страниц пагинации генерировался. У меня плагин Yoast SEO просто дописывает «Страница Х из Y» и настраивается, если что это тут:

Если у вас интернет-магазин, можно добавить ссылку на страницу «Все товары» данной категории. Это позволит просмотреть страницу сразу, без переходов на другие страницы. В этом случае rel=canonical поисковики рекомендуют ставить rel=canonical на эту страницу со всеми товарами без пагинации. Но здесь нужно быть аккуратным, потому что если выводить много товаров/постов, то страница подгружается дольше, а поисковики любят как можно более быстрые сайты.

И еще, если мы находимся на второй или любой другой странице, ссылка на первую страницу должна идти сразу на основную, а не на /page/1, вот пример:

Повторюсь, закрывать от индексации страницы пагинации не нужно. Опять же скриншот комментария «Платона» и ссылку на него уже приводил выше.

Кто-то делает бесконечный скроллинг (товары/посты подгружаются по мере пролистывания страницы вниз). Если вы делаете это, снова нужно быть аккуратным. Либо кто-то выводит кнопки «Показать еще»:

Бесконечный скроллинг и прочие javascript/ajax использовать можно, но чтобы не было проблем, я бы рекомендовал сделать так, чтобы все элементы индексировались и отдавались роботу. И все же, я бы продублировал бесконечный скроллинг цифрами 1,2,3,4, так как некоторым пользователям так удобнее. Вот пример:

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

1, 2, 3 . 10, 20, 30, 40, 50, 60, 70. 79.

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

Вывод — как же в итоге поступить правильно?

На мой взгляд есть 3 варианта наиболее правильных развития событий:

  1. Если вам важен Яндекс или интересны оба поисковика (практически для всех проектов под Россию), то делаем каноникал на первую страницу.
  2. Если интересует только Гугл (например, ваш сайт находится в странах СНГ, где в некоторых из них трафика в Яндексе практически нет, или зарубежные проекты), то делаем rel canonical саму на себя и прописываем prev/next.
  3. Если у вас есть страница, где выводятся все товары, можно указать рел каноникал на нее, использовать rel=prev и rel=next. Тогда будет правильно для обоих поисковых систем. Но в таком случае, напомню, минусы тоже есть: если у вас имеются категории, где выводятся больше количество товаров, то это замедлит скорость загрузки сайта, а это влияет на ранжирование.

Во всех случаях запрета на индексирование не требуется (ни в robots.txt, ни в meta name=»robots»). Не забываем, что текст размещаем только на 1-ой странице, чтобы не было дублей с большим количеством совпадений. Вы можете проследить за изменения страниц в индексе в панели вебмастеров Яндекса и Google.

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

Ребята, кто успел попасть на предзапись моего SEO-марафона, я почти всем ответил на вопросы, осталось еще чуть-чуть, вопросов пришло очень много, разгребаю. �� Если вдруг вы не успели записаться на предзапись марафона, ждите новостей на блоге (подпишитесь на рассылку по почте, чтобы не пропустить старт продаж), в феврале стартуем!

Ну и вопрос: а что вы делаете со страницами пагинации на своих проектах?

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