hreflang

hreflang — указание языковых и региональных вариантов страницы. В Google его можно передать через HTML, HTTP-заголовки или sitemap. Он помогает выбрать подходящий вариант для пользователя, но не гарантирует показ и не заменяет индексацию или canonical.

Как устроен hreflang?

Для каждой страницы перечисляют все её локали, включая саму себя. Значение состоит из кода языка и, при необходимости, кода региона:

Ссылки должны быть взаимными: если страница А указывает на Б, то Б обязана указывать на А.

  • ru — русский язык без привязки к стране;

  • en-US — английский для США;

  • x-default — версия по умолчанию для остальных.

Чем hreflang отличается от canonical?

Canonical указывает предпочитаемый адрес среди дублей, hreflang связывает локализованные варианты. Для переведённых страниц обычно сохраняют канонический адрес соответствующего языка. Для похожих региональных версий на одном языке возможна отдельная стратегия canonical вместе с hreflang; универсальное правило «каждая локаль только на себя» неточно.

Где размещать атрибут?

Есть три способа: в секции head через тег link, в HTTP-заголовке или в карте сайта. Для больших сайтов удобнее карта сайта — она не раздувает код страниц. Важно, чтобы адреса локалей были стабильными и отдавали корректный ответ, без лишних редиректов.

Как применять на практике

Проверьте соответствие страниц друг другу, полный URL, коды языка и региона, доступность обхода и взаимные указания. x-default полезен для варианта по умолчанию, но не обязателен на каждом сайте. Разметка не должна связывать страницы с разными задачами только потому, что у них разные языки.

Частые вопросы

Нужен hreflang для одной версии?

Обычно нет: он описывает альтернативные языковые или региональные варианты.

Что будет без взаимных ссылок?

Google может игнорировать неподтверждённую связь; корректные взаимные пары могут обрабатываться и при неполном наборе других языков.

Можно совместить hreflang и canonical?

Да. Их согласуют с языками, дублями и структурой сайта; canonical не должен случайно исключать нужную переведённую версию.