Покупатель нажимает «Показать ещё» и получает следующую порцию товаров. При этом поисковый робот может находить только карточки первой порции. Исправный интерфейс подтверждает, что подгрузка работает для человека, но ещё не подтверждает доступность остального каталога для обхода.
Проверять нужно путь от категории до конкретной карточки. У следующей страницы должен быть воспроизводимый адрес, у перехода — доступная ссылка, у карточки — рабочий URL. Ни число товаров в административной панели, ни успешный ответ API сами по себе такой путь не доказывают.
Определите, что именно должно обнаруживаться
Начните с небольшой категории, состав которой можно проверить вручную. Сохраните её адрес, порядок сортировки, размер порции, количество товаров и несколько карточек в начале, середине и конце списка. Выберите отдельно товар, который не появляется при первоначальной загрузке. Он станет контрольной точкой всего разбора.
Зафиксируйте ожидаемое поведение без привязки к текущей реализации: посетитель и обходчик могут добраться до каждой действующей карточки через каталог; прямая загрузка очередной страницы возвращает нужную часть списка; изменение номера страницы не меняет категорию или фильтр неожиданно.
В условном каталоге мебели первая порция может показывать столы, а последняя — стулья той же категории. Проверка только первой карточки не заметит, что последняя порция пустая из-за ошибки ограничения в запросе. Поэтому выборку строят по положению в списке и типу товара. Общие правила глубины навигации рассмотрены в статье об архитектуре сайта и структуре URL.
Найдите переход, который не требует нажатия кнопки
Google поясняет, что робот обычно извлекает адреса из ссылок и не нажимает кнопки, требующие пользовательского действия. Подгрузка должна сопровождаться доступным маршрутом к следующим результатам. Это ключевое различие между работающим интерфейсом и работающей навигацией для обхода. Рекомендации Google по пагинации.
Откройте исходный HTML категории и найдите переход к следующей странице. Затем проверьте DOM после первоначального выполнения JavaScript, ещё до клика. Отметьте, присутствует ли настоящий адрес следующей порции или только обработчик события. Обычная кнопка может остаться для удобства посетителя, если рядом предусмотрен пригодный для обхода путь.
Для доступной ссылки Google рекомендует элемент a с атрибутом href, содержащим разрешимый адрес. Ссылки, добавленные JavaScript, также могут обрабатываться, если имеют такую разметку. Следовательно, проблема определяется состоянием ссылки, а не самим фактом использования JavaScript. Документация Google о доступных ссылках.
Проверьте адрес перехода отдельно: скопируйте его, откройте в новой вкладке без предварительного посещения категории. Если он работает только после получения токена в браузере или запуска скрипта предыдущей страницы, это отдельный дефект прямого доступа.
Сравните прямую загрузку и подгруженную порцию
У кнопки и страницы по прямому адресу должно быть понятное соответствие. Для одного выбранного состояния сравните идентификаторы или URL карточек в ответе API, в обновлённом интерфейсе и на странице, открытой отдельно. Если сравнивать только название категории, разные наборы легко принять за одинаковые.
Используйте такой рабочий протокол:
| Проверка | Что записать | Признак проблемы |
|---|---|---|
| Первая загрузка | URL и первая группа карточек | Категория есть, ссылок на товары нет |
| Следующая порция | Номер и URL новых карточек | Повторяются товары предыдущей порции |
| Прямой адрес | Код ответа и состав списка | Открывается первая страница вместо выбранной |
| Последняя страница | Последние карточки и навигация | Последние товары недоступны по ссылкам |
| Номер за пределами списка | Ответ и видимое сообщение | Бесконечно возникают пустые страницы |
Укажите дату проверки: каталог меняется, и завтра последовательность товаров может отличаться. Для воспроизведения ошибки полезнее идентификатор карточки и параметры запроса, чем фраза «на второй странице нет товара».
Проверьте адреса и canonical страниц списка
У страниц последовательности различается основной набор товаров. Поэтому не следует автоматически считать их дублями первой страницы. Google рекомендует отдельные URL для частей списка и canonical на соответствующую страницу, а не единый canonical всех частей на начало. Раздел о URL в документации по пагинации.
В протоколе сопоставьте фактический адрес, canonical, ссылки «следующая» и «предыдущая». Прямая загрузка второй страницы, которая одновременно объявляет канонической первую, требует проверки конфигурации шаблона. Дубли номера первой страницы, например вариант с параметром и вариант без него, тоже должны иметь согласованное правило.
Не переносите решение на сортировки и фильтры автоматически. Они могут создавать другой класс URL с отдельной политикой индексации. В этой задаче сначала восстановите последовательность основного списка. Смешение исправления пагинации с переработкой фильтров увеличит объём изменений и усложнит приёмку.
Если canonical в HTTP HTML отличается от canonical в DOM, сохраните оба значения. Разница указывает на два источника настройки. Тот же подход к сравнению представлений описан в материале о контенте JavaScript-страницы для поискового робота.
Отделите обнаружение карточки от её индексации
Появление ссылки на товар означает, что адрес можно обнаружить этим маршрутом. Оно не означает, что поисковая система уже загрузила и включила карточку в индекс. Не закрывайте задачу по скриншоту результатов поиска: он не показывает, каким путём робот получил адрес.
Проверьте контрольную карточку: конечный HTTP-ответ, основной текст, разрешение индексации, canonical и наличие ссылок из списка. Если маршрут исправен, а карточка остаётся вне индекса, расследование продолжается на уровне самой страницы и данных поискового кабинета.
Sitemap помогает сообщить адреса товаров, но не заменяет проверку навигации. Покупателю всё равно нужны переходы по каталогу. В журнале разделите два наблюдения: «карточка присутствует в sitemap» и «карточка достижима из категории». Так команда не спутает дополнительный канал обнаружения с исправлением интерфейса.
Составьте задачу с проверяемым результатом
Рабочая формулировка: «Для категории и каждой действующей страницы списка обеспечить прямой адрес и последовательные ссылки; контрольные карточки из последних порций должны быть доступны без нажатия кнопки подгрузки». Приложите таблицу адресов и снимок текущих ответов.
Критерии приёмки задайте до разработки:
- следующий URL открывается в новой браузерной сессии;
- в доступной разметке есть ссылка на следующую часть списка;
- товары прямой страницы соответствуют её номеру;
- canonical согласован с адресом соответствующей части;
- последняя часть не теряется, а несуществующие номера обрабатываются по принятому правилу.
При ограниченном обходе аудит сайта reChecker помогает проверить найденные URL и технические сигналы. Число обнаруженных страниц само по себе не доказывает полноту каталога: его нужно сопоставить с подготовленным реестром контрольных товаров.
Примите исправление на изменяющемся каталоге
После релиза повторите тот же маршрут и сохраните новые результаты рядом со старыми. Затем измените размер окна браузера, сбросьте фильтры и проверьте категорию, где товаров меньше одной порции. Это ловит ошибки граничных состояний, которые не видны на длинном списке.
Отдельно проверьте добавление или удаление товара между загрузками. Смещение списка иногда вызывает повтор или пропуск карточки. Такое поведение обсуждают с разработчиком как свойство выбранной сортировки и механизма пагинации; нельзя молча объявить его доказательством недоступности всех товаров.
Техническая задача завершена, когда маршрут воспроизводится, адреса и состав согласованы, контрольные карточки достижимы. Сведения об обходе и индексации проверяют позже в поисковом кабинете. Даже корректная пагинация не гарантирует индексацию каждой карточки или рост её позиции.