Hreflang: что это и зачем нужен
Hreflang — HTML-атрибут для указания языка и региона страницы. Помогает поисковикам показывать правильную версию сайта пользователям из разных стран.
Что такое Hreflang
Hreflang — это HTML-атрибут ссылки <link rel="alternate" hreflang="xx" href="...">, который сообщает поисковым системам о языковых и региональных версиях страницы. Атрибут был введён Google в 2011 году для решения проблемы мультиязычных сайтов.
Без hreflang Google может показывать французским пользователям немецкую версию страницы или смешивать версии для разных регионов. Hreflang устраняет эту проблему, явно указывая какая версия предназначена для какой аудитории.
Важно: Яндекс также поддерживает hreflang, хотя использует его менее строго чем Google.
Зачем нужен Hreflang
Hreflang необходим в следующих случаях:
- Несколько языков — сайт доступен на русском, английском, немецком и т.д.
- Региональные варианты — один язык для разных стран (en-US, en-GB, en-AU)
- Одинаковый контент — страницы с похожим содержанием для разных аудиторий
Без правильного hreflang:
- Поисковик показывает неверную языковую версию
- Теряется трафик из целевых регионов
- Страницы конкурируют друг с другом в поиске
Как настроить Hreflang
Добавьте в <head> каждой языковой версии страницы:
<link rel="alternate" hreflang="ru" href="https://example.com/ru/page" />
<link rel="alternate" hreflang="en" href="https://example.com/en/page" />
<link rel="alternate" hreflang="en-US" href="https://example.com/us/page" />
<link rel="alternate" hreflang="x-default" href="https://example.com/page" />
Ключевые правила
- Перекрёстные ссылки — каждая версия должна ссылаться на все другие версии, включая саму себя
- x-default — указывает версию по умолчанию, когда нет совпадения по региону/языку
- Абсолютные URL — всегда используйте полные URL с протоколом
- Коды языков по ISO 639-1 — ru, en, de, fr и т.д.
- Коды регионов по ISO 3166-1 — US, GB, RU, DE и т.д.
Варианты реализации
Hreflang можно добавить тремя способами:
1. HTML-тег в head (наиболее распространённый):
<link rel="alternate" hreflang="ru" href="https://example.com/ru/" />
2. HTTP-заголовок (для PDF и не-HTML страниц):
Link: <https://example.com/ru/>; rel="alternate"; hreflang="ru"
3. XML Sitemap:
<url>
<loc>https://example.com/page</loc>
<xhtml:link rel="alternate" hreflang="ru" href="https://example.com/ru/page"/>
<xhtml:link rel="alternate" hreflang="en" href="https://example.com/en/page"/>
</url>
Проверка Hreflang на reChecker
Используйте Hreflang Checker для полной проверки мультиязычной разметки сайта. Инструмент покажет:
- Список всех hreflang тегов на странице
- Ошибки в кодах языков и регионов
- Отсутствующие перекрёстные ссылки
- Конфликты между HTML тегами и Sitemap
FAQ
Сколько языковых версий можно указать? Нет технического ограничения. Можно указать десятки версий — Google обработает все. Главное, чтобы каждая версия ссылалась на все остальные.
Hreflang работает для субдоменов?
Да, hreflang работает как для поддиректорий (example.com/ru/), так и для поддоменов (ru.example.com) и ccTLD (example.ru). Структура URL не влияет на работу атрибута.
Почему Google игнорирует мой hreflang? Наиболее частые причины: отсутствие обратных ссылок (страница A не ссылается на B), неверные коды языков/регионов, несоответствие URL в sitemap и HTML тегах. Проверьте все версии через reChecker.
Попробуйте инструмент
Проверьте hreflang на вашем сайте с помощью бесплатного инструмента.
Hreflang Checker →