Canonical и пагинация: отдельный адрес для каждой страницы
Как устроить пагинацию рубрик: отдельные URL, обычные ссылки и корректный canonical на каждой странице.
- Страница 1Свой canonical и ссылка на следующую
- Страница 2Свой canonical и доступные HTML-ссылки
- Дальнейшие страницыТа же логика без canonical на первую
Когда статей становится много, один длинный список уже неудобен. Пагинация решает эту проблему, но при настройке canonical легко допустить ошибку: объявить все страницы копиями первой. На второй и третьей страницах находятся другие статьи, поэтому поисковику нужны их собственные адреса и доступные ссылки между ними.
У второй страницы свой canonical
<!-- На странице https://example.com/articles/page/2/ -->
<link rel="canonical" href="https://example.com/articles/page/2/">
<a href="/articles/">Предыдущая</a>
<a href="/articles/page/3/">Следующая</a>Вторая страница коллекции обычно не является копией первой: на ней другие материалы. Указание первой страницы как canonical для всей последовательности создаёт противоречивый сигнал. Canonical предназначен для выбора предпочтительного адреса эквивалентного содержимого; поисковая система оценивает и другие сигналы.
Ссылки должны работать самостоятельно
Обычный href позволяет перейти по страницам без нажатия специальной JavaScript-кнопки. Бесконечная прокрутка может дополнять этот путь, если доступные адреса и последовательность сохранены. Не используйте только фрагмент после решётки как единственный адрес следующего набора.
Укажите номер текущей страницы в интерфейсе и заголовке. Для сортировки с одинаковыми датами нужен стабильный дополнительный ключ, иначе соседние страницы могут повторять записи. При вставке новых материалов состав коллекции естественно меняется: это следует отличать от ошибки сортировки.
Проверяем крайние случаи
Откройте первую, вторую и последнюю страницы напрямую. Несуществующий номер должен возвращать настоящий HTTP 404, а не пустой список со статусом 200. Адрес страницы один удобно перенаправить на базовый адрес коллекции. Удалённые фильтры и параметры не должны создавать бесконечное число пустых комбинаций.
Google не использует rel next и prev для распознавания пагинации. Главное — самостоятельные адреса и ссылки между страницами. Проверьте их в исходном HTML и прямым запросом к серверу, а после публикации посмотрите отчёты об индексации.
