Альтернативные версии страницы в SEO
Одна страница может жить по нескольким адресам: разные языки, отдельная мобильная версия. Если связь не указать, робот может показать не ту версию или посчитать адреса дублями.
Связь задают тегом link
с атрибутом rel="alternate".
Для языка дополнительно ставят
hreflang.
Пример для сайта на русском и английском:
<head>
<link rel="alternate" hreflang="ru" href="https://example.com/ru/">
<link rel="alternate" hreflang="en" href="https://example.com/en/">
<link rel="alternate" hreflang="x-default" href="https://example.com/">
</head>
Значение x-default - запасной
вариант: страница выбора языка
или основная версия для тех,
чьего языка в списке нет.
Связи должны быть взаимными. Русская страница указывает на английскую, английская - на русскую. Если указать связь только в одну сторону, робот может ее проигнорировать.
На каждой языковой версии обычно ставят и свой каноникал на этот же адрес:
<head>
<link rel="canonical" href="https://example.com/ru/about/">
<link rel="alternate" hreflang="ru" href="https://example.com/ru/about/">
<link rel="alternate" hreflang="en" href="https://example.com/en/about/">
</head>
Сейчас для нового сайта чаще
делают одну адаптивную верстку
на одном URL. Отдельный мобильный
адрес вроде m.example.com
нужен реже.
Если отдельная мобильная версия
все же есть, ее связывают
через rel="alternate"
с указанием media:
<head>
<link rel="canonical" href="https://example.com/page/">
<link rel="alternate" media="only screen and (max-width: 640px)" href="https://m.example.com/page/">
</head>
На мобильной странице каноникал должен вести на основную десктопную версию. Иначе робот увидит два главных адреса.
<head>
<link rel="canonical" href="https://example.com/page/">
</head>
Не путайте alternate
с каноникалом. Каноникал говорит:
«это копия, главная вот».
Альтернатива говорит: «это та же
страница для другого языка
или устройства».
Авторедирект по языку браузера ломать обход нельзя. Языковые версии должны открываться по своим постоянным адресам.
Зачем нужен rel="alternate"?
Почему для нового сайта чаще
достаточно одного адаптивного
адреса, а не m.example.com?
Дана верстка русской страницы:
<head>
<title>О компании</title>
</head>
Добавьте hreflang для
русской и английской версий
и x-default на главную
выбора языка.
Дана верстка мобильной страницы:
<head>
<link rel="canonical" href="https://m.example.com/page/">
</head>
Основная версия лежит на
https://example.com/page/.
Объясните, в чем ошибка
и исправьте ее.