SEO · 5 мин

Пагинация каталога: ссылки, адреса и доступ к товарам

Как проверить, что товары за кнопкой «Показать ещё» доступны по стабильным URL, не теряются между страницами и открываются без сохранённой сессии.

Тематическая иллюстрация к материалу: Пагинация каталога: ссылки, адреса и доступ к товарам

Редакция Romanov Lab · Опубликовано

В каталоге видно несколько десятков товаров, остальные появляются после нажатия «Показать ещё». Для покупателя это может быть удобным интерфейсом. Для проверки SEO важно установить другое: существует ли воспроизводимый маршрут к остальному ассортименту. Наличие всех карточек в базе или sitemap не доказывает, что пагинация работает.

Определите, что представляет каждая страница

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

Для Google основа поисково доступной пагинации — отдельные URL частей списка и последовательные ссылки в элементах a с href. Робот обычно не нажимает кнопки пользовательского интерфейса. Google рекомендует собственный canonical для каждой страницы последовательности, не использовать фрагмент после # для её номера и больше не использует rel=next/prev для распознавания пагинации. Эти положения собраны в официальных рекомендациях по пагинации.

Поэтому кнопку можно оставить как удобное действие, но архитектуру списка нужно проверять отдельно. Например, /catalog/pumps/?page=3 должен открывать предусмотренную третью часть без предварительного посещения первой страницы. Красивое изменение адресной строки после нескольких кликов само по себе этого не обеспечивает.

Проверьте прямой вход в середину

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

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

Учебный сценарий: теряются товары с одинаковой ценой

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

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

Следующий тест выполняют с изменением ассортимента между запросами. Здесь полное совпадение списков не всегда возможно: новые товары законно сдвигают границы. Важно отделить ожидаемую изменчивость каталога от ошибки постоянной потери карточек. Для быстро меняющегося набора может понадобиться иная схема выборки; её оценивают совместно с возможностью стабильного публичного адреса и прямого входа.

Матрица проверки пагинации
ТестОжидаемый результатПризнак проблемы
Открыть page=2 напрямуюНужная часть каталога без предыдущих действийПервая страница, пустота или требование сохранённой сессии
Пройти все страницы контрольного набораВсе предусмотренные идентификаторы достижимыПропуски, повторы из-за порядка или оборванная ссылка
Изменить сортировкуСогласованное состояние фильтров и номераНомер от старой выдачи уводит в пустой список
Открыть номер за последней страницейПредусмотренная обработка несуществующего состоянияБесконечные пустые адреса с одинаковой оболочкой
Вернуться из карточкиПонятный возврат к месту выбораПотеря положения и неожиданный сброс условий

Не обрывайте обнаружение на первой порции

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

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

Разберите крайние состояния

Что делает сайт с page=1, page=0, отрицательным значением, текстом вместо числа и двумя одинаковыми параметрами? Ответы должны быть согласованы, чтобы ошибочные ссылки не создавали бесконечное пространство вариантов. Не отправляйте любое неверное значение на последнюю страницу без оценки: такое правило может размножить один список по множеству адресов.

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

Приёмка по покрытию, а не по внешнему виду

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

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

Нужен план для вашего проекта? Напишите нам в Telegram или по электронной почте. Обсудим разработку, продвижение или поддержку сайта.

Читайте также