Пропустить шапку и читать
Витринав поиске

Каталог и техникапозиция 4 из 9

Пагинация в каталоге магазина: ?page=, «показать ещё» и canonical

Выпущено 24.10.2026Читать около 5 мин

Что разобрано ниже

Пагинация нужна поиску не ради самих страниц 2, 3 и 10, а ради товаров, которые на них лежат: через неё робот находит карточки, до которых нет других ссылок. Поэтому главное правило простое — у каждой страницы списка есть собственный постоянный адрес и обычная HTML-ссылка на неё. Сортировки, вид списка и число товаров на странице, наоборот, новых страниц для поиска создавать не должны.

Три типичные ситуации

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

Классическая нумерация. Под списком товаров ссылки «1 2 3 … 12». Самый понятный для робота вариант. Проблемы обычно с дублями: первая страница открывается и по адресу категории, и по ?page=1.

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

Бесконечная прокрутка. То же самое, только без кнопки. Риски те же, плюс тяжёлая страница после долгой прокрутки и невозможность вернуться к месту, где покупатель остановился.

Адреса страниц

Схема адресов должна быть одна на весь каталог. Оба варианта ниже рабочие, выберите один и придерживайтесь его:

https://shop.example/catalog/kurtki/
https://shop.example/catalog/kurtki/?page=2
https://shop.example/catalog/kurtki/?page=3

или

https://shop.example/catalog/kurtki/
https://shop.example/catalog/kurtki/page-2/
https://shop.example/catalog/kurtki/page-3/

Первая страница существует только по адресу категории. Если CMS умеет отдавать её же по ?page=1 или /page-1/, настройте 301-редирект на чистый адрес. Несуществующая страница, например ?page=999 при двенадцати реальных, должна отдавать код 404, а не копию первой страницы или пустой список с кодом 200.

Canonical на страницах пагинации

Здесь чаще всего ошибаются. Соблазн понятен: поставить на все страницы ?page=N canonical на первую страницу, чтобы «не было дублей». Но страница 5 — не копия страницы 1: на ней другие товары. Если поисковая система примет такой canonical, она может перестать обходить глубокие страницы, и товары на них останутся без входящих ссылок.

Надёжный вариант — canonical на саму себя:

<!-- на https://shop.example/catalog/kurtki/?page=3 -->
<link rel="canonical" href="https://shop.example/catalog/kurtki/?page=3">

Чтобы страницы пагинации не конкурировали с первой за запрос категории, сделайте их заголовки отличными и менее «продающими»:

title:  Куртки детские — страница 3 | {магазин}
H1:     Куртки детские, страница 3

Текст категории, баннеры и блок популярных фильтров выводите только на первой странице. Google с 2019 года не использует разметку rel="prev" и rel="next" как сигнал, поэтому опираться на неё не стоит; ссылки на соседние страницы в самом списке важнее.

Сортировки, вид и число товаров

Параметры вроде ?sort=price_asc, ?view=list или ?count=48 показывают те же товары в другом порядке. Для поиска это копии, и робот не должен тратить на них время.

ПараметрПримерМеняет набор товаров?Что сделать
Номер страницы?page=3ДаИндексировать, canonical на себя
Сортировка?sort=price_ascНетCanonical на страницу без сортировки, Clean-param
Вид списка?view=listНетCanonical, Clean-param, лучше хранить в cookie
Товаров на странице?count=48ЧастичноCanonical на вариант по умолчанию, Clean-param
Метки рекламы?utm_source=…НетClean-param, canonical

Для Яндекса такие параметры перечисляют в Clean-param, и робот склеивает адреса с основным:

User-agent: Yandex
Clean-param: sort&view&count /catalog/

Параметр page в Clean-param не добавляйте: он меняет содержимое, и склейка уберёт из индекса нужные страницы. Для Google ту же задачу решает canonical, Clean-param он не читает. Если сортировка сочетается с фильтрами, правила для фильтров разобраны на странице о фасетной навигации.

Как сделать «показать ещё» и бесконечную прокрутку безопасными

Схема, при которой удобство не мешает индексации:

  1. Под кнопкой «показать ещё» в HTML лежит обычная ссылка на следующую страницу: <a href="/catalog/kurtki/?page=2">. Скрипт перехватывает клик и догружает товары, а робот просто переходит по ссылке.
  2. При догрузке адрес в строке браузера меняется на ?page=2, ?page=3 через History API. Покупатель может поделиться ссылкой или вернуться к месту, где остановился.
  3. Каждая такая страница открывается напрямую и отдаёт свои товары в исходном HTML, без выполнения скриптов.
  4. Под бесконечной прокруткой остаётся классическая нумерация в подвале списка — для робота и для тех, кто хочет перейти сразу к концу.

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

Сколько товаров на странице

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

Как проверить

Откройте страницу 3 любой крупной категории и посмотрите исходный код: есть ли список товаров без выполнения скриптов, какой canonical, какие title и H1. В Яндекс Вебмастере проверьте через «Страницы в поиске», не исключены ли страницы пагинации как дубли первой, а в «Статистике обхода» — нет ли среди обходимых адресов массы сортировок. В Google Search Console инструмент проверки URL покажет, какой canonical выбрал Google для страницы пагинации и совпадает ли он с вашим. Полный обход раздела по блокам удобно делать по чек-листу аудита магазина.

Проверить в своём магазине

  • У каждой страницы пагинации постоянный адрес, на который ведёт обычная HTML-ссылка.
  • Первая страница доступна только по адресу категории, ?page=1 перенаправляет на него.
  • Canonical на страницах пагинации указывает на саму страницу, а не на первую.
  • Несуществующие номера страниц отдают код 404.
  • Сортировки, вид списка и метки склеены через canonical и Clean-param, параметр page не склеен.
  • Кнопка «показать ещё» меняет адрес и опирается на настоящую ссылку на следующую страницу.

Вопросы владельцев магазинов

Нужно ли закрывать страницы пагинации тегом noindex?

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

Может ли страница 2 обогнать первую страницу категории в поиске?

Такое случается, когда страницы пагинации слишком похожи на первую: тот же title, тот же H1, тот же текст. Если на страницах 2 и дальше в заголовке есть номер, а текст и продающие блоки остаются только на первой, поисковой системе проще выбрать для запроса правильную страницу.

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

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

Что делать, если сортировки уже попали в индекс?

Поставьте на страницы с сортировкой canonical на адрес без параметра, добавьте параметр в Clean-param для Яндекса и уберите ссылки с сортировкой из тех мест, где их видит робот, например из карты сайта. Адреса выпадут из индекса постепенно, после повторного обхода.

Проверено редакцией 24.10.2026. Интерфейсы Вебмастера, Метрики и Search Console время от времени меняются — названия разделов сверяйте со справкой сервисов.