Google прямо говорит: не ставь canonical со страниц пагинации на первую. Яндекс в блоге для магазинов советует ровно это. Я делаю так: страницы 2, 3, ... открыты, canonical на себя, уникальный title с номером, SEO-текст только на первой. И главное — товар с глубины должен находиться роботом не только через пагинацию.
Разбираем пагинацию в каталоге интернет-магазина: что ставить в canonical, закрывать ли от индекса, что делать с «Показать ещё» и бесконечной прокруткой. Тема старая, но на аудитах магазинов я до сих пор вижу по три разных решения на одном сайте — в зависимости от того, какой подрядчик последним трогал шаблон.
Почему это вообще проблема
Страница каталога /catalog/stulya/?page=5 сама по себе в поиске никому не нужна. Её никто не ищет. Но на ней лежат ссылки на 24 товара, и для части из них это единственный путь, по которому робот вообще узнаёт об их существовании.
Отсюда весь конфликт. Закроешь пагинацию — получишь чистый индекс, но рискуешь потерять товары с глубины. Откроешь — в индексе появятся десятки похожих страниц с одинаковыми title и текстом. Задача — открыть так, чтобы дублей не было.
Google и Яндекс говорят разное
Google в документации по пагинации пишет прямо: у каждой страницы свой URL, страницы связаны обычными ссылками, и не надо указывать первую страницу как каноническую для всей серии. rel="prev/next" Google перестал использовать ещё в 2019-м.
Яндекс, в советах интернет-магазинам от Платона Щукина: если на страницах пагинации нет трафика и контент похож — ставь canonical на первую страницу. И оговаривается, что ссылки на товары с неканонических страниц роботу всё равно будут известны.
Что выбирать, когда сайт живёт в двух поисковиках? Я выбираю вариант Google. Логика простая: self-canonical Яндекс не считает ошибкой и нормально с ним живёт, а canonical на первую Google может просто проигнорировать или, хуже, послушаться — и тогда глубина каталога держится на честном слове.
Как делаю я
| Элемент | Страница 1 | Страница 2+ |
|---|---|---|
| URL | /catalog/stulya/ | /catalog/stulya/?page=2 или /page/2/ |
| canonical | на себя | на себя |
| meta robots | index, follow | index, follow |
| title | полный, под кластер | тот же + «— страница 2» |
| description | свой | короткий с номером или пустой |
| SEO-текст, FAQ | да | нет |
| В sitemap.xml | да | нет, только карточки товаров |
И отдельно — техническая гигиена, на которой спотыкаются чаще, чем на canonical:
- ?page=1 не должен существовать. Ссылка «1» в пагинации ведёт на чистый URL раздела, а ?page=1 отдаёт 301 туда же. Иначе у тебя две первые страницы.
- Несуществующая страница — 404. Если товаров на 7 страниц, /page/40/ не должна отдавать 200 с пустым списком или копию последней.
- Ссылки — обычные
<a href>. Не кнопки с onclick, не#page=2во фрагменте. Фрагмент робот не считает отдельным адресом. - Сортировки поверх пагинации (?sort=price&page=3) — canonical на несортированный вариант той же страницы, а лучше вообще не давать роботу эти комбинации. Подробнее про параметры — в статье про SEO-фильтры.
Кстати, этот блог сделан ровно так: открой /blog/page/2/ — canonical на себя, в title номер страницы. Не потому что «так правильно», а потому что я хочу, чтобы старые статьи находились не только через sitemap.
noindex на пагинацию — плохая идея надолго
Популярный вариант: noindex, follow на страницы 2+. Мол, в индекс не лезут, а по ссылкам робот ходит. Звучит разумно.
Проблема в «надолго». В Google давно говорили, что страницы, которые долго стоят в noindex, со временем обходятся всё реже и ссылки с них перестают учитываться — фактически превращаются в noindex, nofollow. И вот тут глубина каталога отваливается.
На себе проверял, увы. Лет пять назад в магазине стройматериалов поставил noindex на всю пагинацию — чистил индекс перед переездом. Через пару месяцев в Search Console полезли «Обнаружено, не проиндексировано» по товарам из хвостов категорий. Это были позиции, которые жили только на страницах 6–12 и больше ниоткуда не линковались. Снял noindex, добавил блоки перелинковки — вернулись за месяц. Если у тебя уже висит такой статус, разбор причин — в статье про «просканировано, но не проиндексировано».
«Показать ещё» и бесконечная прокрутка
Для пользователя удобно, для робота — стена. Googlebot не жмёт кнопки и не скроллит, как человек. Если товары подгружаются только скриптом по клику, для поиска на странице раздела их 24, а остальных не существует.
Решение одно: под «Показать ещё» должна лежать обычная пагинация. Кнопка подгружает следующую порцию и меняет URL в адресной строке на ?page=2, а в HTML внизу всё равно есть ссылки на страницы 1, 2, 3. Пользователь видит ленту, робот видит нумерацию. Проверяется за минуту: отключи JavaScript в браузере и попробуй дойти до последнего товара в разделе. Не дошёл — робот тоже не дойдёт.
«Показать все» — когда можно
Вариант с одной страницей на весь раздел и canonical на неё — рабочий, пока раздел маленький. 60–80 товаров с лёгкими превью — нормально. 600 товаров — страница весом в десятки мегабайт, Core Web Vitals в красной зоне, и поисковик может её просто недогрузить. Для больших каталогов не надо.
Главное: пагинация — не единственный путь к товару
Самый важный пункт, и его почему-то обсуждают меньше всего. Если товар доступен роботу только через /page/9/, у тебя проблема не с пагинацией, а со структурой.
- Все карточки — в sitemap.xml, с актуальным lastmod.
- Подкатегории и посадочные фильтров режут большие разделы: вместо 40 страниц «Стульев» — «Барные», «Кухонные», «Офисные» по 3–5 страниц.
- Блоки «похожие товары» и «с этим покупают» на карточках связывают товары между собой в обход листинга. Про них — в SEO карточек товара.
- По умолчанию сортировка не «по дате добавления», иначе старые хиты продаж навсегда уезжают на дальние страницы.
Сколько кликов от главной до самого глубокого товара у тебя сейчас? Screaming Frog показывает это в колонке Crawl Depth. Больше пяти-шести — повод резать разделы, а не спорить про canonical.
Как проверить свой магазин за 20 минут
- Открой /catalog/раздел/?page=2 и посмотри в код: canonical, meta robots, title. Совпадает ли title с первой страницей?
- Открой ?page=1 и /page/999/ — что отдаёт сервер?
- Отключи JS и пролистай раздел до конца.
- В GSC → «Страницы» отфильтруй URL с page= и посмотри статусы. В Вебмастере — «Страницы в поиске» → исключённые.
- Прогони сайт краулером и отсортируй товары по глубине.
Если по пунктам 1–3 всё чисто, а товары всё равно не в индексе — копать надо в структуру и в сам контент карточек, а не в пагинацию.
Частые вопросы
Нужно ли писать SEO-текст на страницах пагинации?
Нет. Текст раздела — только на первой странице. Повторённый на 2, 3, ... он делает страницы ещё более похожими друг на друга.
/page/2/ или ?page=2 — что лучше?
Без разницы для ранжирования. Выбери один формат и держи его по всему сайту. Смешанный вариант — готовые дубли.
Стоит ли ставить rel="prev" и rel="next"?
Google их не использует с 2019 года. Вреда нет, если ставятся корректно. Но и надеяться на них вместо нормальных ссылок в HTML не стоит.