Hreflang атрибут полезен для мультиязычных сайтов, на которых присутствует идентичный контент на нескольких языках, чтобы избежать склейки страниц в процессе индексирования.
Обозначить альтернативные версии страниц можно через:
- HTML-теги. Hreflang добавляется в раздел заголовка <head>
<link rel="alternate" hreflang="en" href="site.com/en" /> <link rel="alternate" hreflang="ru" href="site.com/ru" /> <link rel="alternate" hreflang="x-default" href="site.com" />
*x-default указывает страницу по умолчанию
2. HTTP-заголовки. HTTP-заголовки — это решение для контента кроме HTML
Link: <https://example.com/file.pdf>; rel="alternate"; hreflang="en", <https://ru.example.com/file.pdf>; rel="alternate"; hreflang="ru", <https://fr.example.com/file.pdf>; rel="alternate"; hreflang="fr"
*обязательно указывать полный URL
3. Карту сайта.
- Прописать пространство имен xhtml: xmlns:xhtml=»http://www.w3.org/1999/xhtml»
- Добавить тег <URL> для каждого URL.
- В элементе <URL> создать дочерний элемент <loc>, в котором указывается URL страницы.
- В элементе <URL> создать дочерний элемент <xhtml:link rel=»alternate» hreflang=»{код языка}«>, в котором указываются все варианты страницы, включая текущую.
*по правилам все языковые страницы должны ссылаться друг на друга, а также сами на себя.
Проверьте корректность данных с помощью валидатора sistrix.com
При правильной настройке атрибутов поисковые системы автоматически выдают нужную версию, основываясь на географических и языковых данных пользователя.