Диагностический инструмент

Проверка hreflang

Введите URL: инструмент прочитает все аннотации hreflang на странице, проверит каждый код языка и региона и запросит альтернативные версии, чтобы убедиться, что они ссылаются обратно.

Наш сервер запрашивает введённую страницу и до 10 её альтернативных URL и передаёт их в ваш браузер, где и выполняются проверки. Ничего не сохраняется.

Как работает проверка hreflang

Google читает аннотации hreflang из трёх мест: элементов link в HTML-head, HTTP-заголовка Link и XML-карты сайта. Этот инструмент запрашивает введённую страницу и читает первые два. Если вы используете способ с картой сайта, проверьте записи xhtml:link в её файле.

Каждое значение сверяется с форматом, который описывает Google: код языка, затем необязательный код письменности и необязательный код региона, либо зарезервированное значение x-default. Каждый URL должен быть полным, а элементы link в HTML должны находиться внутри head.

Затем инструмент запрашивает до 10 альтернативных URL, названных на странице, и читает их аннотации. По словам Google, каждая языковая версия должна перечислять саму себя и все остальные версии, а если две страницы не ссылаются друг на друга, теги игнорируются. Именно эту обратную ссылку большинство инструментов не проверяет.

Правила hreflang коротко

Каждое правило ниже пересказывает страницу Google Search Central о локализованных версиях, и каждому соответствует проверка в инструменте.

Код языкаISO 639-1, например en, de или ja. Указывать только регион нельзя.
Код регионаНеобязателен, ISO 3166-1 alpha-2, например GB или MX. Коды вне стандарта, такие как es-419, не поддерживаются. EU, UN и UK ни на что не влияют.
ПисьменностьНеобязательна, ISO 15924, например zh-Hant для традиционного китайского или zh-Hans для упрощённого.
РегистрЗначения не зависят от регистра: en-gb и en-GB означают одно и то же.
x-defaultЗарезервированное значение на случай, когда ни один другой язык или регион не совпадает с настройками браузера пользователя. Предназначено для страниц выбора языка.
Ссылка на саму себяКаждая версия перечисляет саму себя и все остальные версии.
Обратные ссылкиЕсли страница X ссылается на страницу Y, страница Y должна ссылаться обратно на X. Иначе аннотации могут быть проигнорированы.
URLПолные, с http или https. Не //example.com/foo и не /foo. Альтернативные версии не обязаны быть на том же домене.
РазмещениеВ HTML элементы link должны находиться внутри корректно сформированного раздела head.

Правила сверены с документацией Google: Tell Google about localized versions of your page

Что показывает проверка

  • Все аннотации hreflang на странице, из HTML-head и из HTTP-заголовка Link
  • Коды языка не по ISO 639-1, коды региона не по ISO 3166-1 alpha-2, регион без языка и зарезервированные коды EU, UN и UK
  • Относительные URL и URL без протокола, которые Google не принимает
  • Отсутствие ссылки на саму себя, когда ни одна аннотация не указывает на проверяемую страницу
  • Один и тот же код, указанный несколько раз, и элементы link за пределами head
  • Для 10 альтернативных версий максимум: ссылается ли каждая обратно, отдаёт ли редирект или ошибку и совпадает ли её набор аннотаций с набором этой страницы

Ошибки hreflang, которые ломают международное SEO

Десять ошибок, которые стоят почти за каждой сломанной настройкой hreflang, с симптомом и решением для каждой.

Читать руководство по hreflang

Из блога

Все руководства →

Frequently asked questions

Что проверяет инструмент для hreflang?
Он читает аннотации hreflang на странице и сверяет их с правилами Google: допустимые коды языка по ISO 639-1 и региона по ISO 3166-1 alpha-2, полные URL, ссылка на саму себя и обратные ссылки от каждой альтернативной версии. Этот инструмент также сообщает о повторяющихся кодах и элементах link вне head.
en-UK — допустимое значение hreflang?
Нет. Код Великобритании по ISO 3166-1 alpha-2 — GB, поэтому пишите en-GB. Google называет UK, наряду с EU и UN, кодами, которые не действуют в аннотациях hreflang. Языковая часть по-прежнему учитывается, а региональная ничего не даёт.
Нужен ли x-default?
Google его не требует. Зарезервированное значение x-default говорит Google, какую страницу использовать, если ни один другой язык или регион не совпадает с настройками браузера пользователя. Оно задумано для страниц выбора языка, но его можно ставить на любой странице. Инструмент отметит, если его нет.
Зачем инструмент запрашивает другие страницы?
Потому что hreflang работает только парами. По словам Google, если две страницы не ссылаются друг на друга, теги будут проигнорированы. Убедиться в этом можно, только открыв каждую альтернативную версию и прочитав её аннотации, и инструмент делает именно это, максимум для 10 из них.
Сообщает ли hreflang Google, на каком языке моя страница?
Нет. Google пишет, что не использует ни hreflang, ни HTML-атрибут lang для определения языка страницы: для этого у него свои алгоритмы. hreflang говорит Google, какие ещё версии страницы существуют и для кого предназначена каждая.