Canonical и пагинация: отдельный адрес для каждой страницы

2 мин чтения

Как устроить пагинацию рубрик: отдельные URL, обычные ссылки и корректный canonical на каждой странице.

У каждой страницы списка свой адрес
  1. Страница 1Свой canonical и ссылка на следующую
  2. Страница 2Свой canonical и доступные HTML-ссылки
  3. Дальнейшие страницыТа же логика без 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 и прямым запросом к серверу, а после публикации посмотрите отчёты об индексации.

Источники и дальнейшее чтение