1

Topic: Как использовать атрибут hreflang для указания языка

Сейчас веб-сайты нередко переводятся на иностранные языки и адаптируются для разных регионов. С помощью атрибутов rel="alternate" hreflang="x" Google предлагает результаты поиска на языке пользователя и с соответствующим региональным URL.


Атрибут rel="alternate" hreflang="x" рекомендуется использовать в следующих случаях:

Вы перевели только шаблон веб-страницы (например, панель навигации и нижний колонтитул), а основное содержание осталось на исходном языке. Обычно это нужно на страницах, контент которых создается пользователями (например, сообщения на форумах).
На сайте представлено содержание на одном языке, однако оно немного различается в зависимости от региона. Так, контент на английском языке может быть предназначен для пользователей из Великобритании, Ирландии и США.

На сайте нет атрибутов hreflang!

Содержание сайта полностью переведено. Например, если у каждой страницы есть версии на немецком и английском языках.
Использование языковых атрибутов
Допустим, у вас есть сайт на английском и испанском языках. Вы можете указать, что http://www.example.com/ и http://es.example.com/ – это разные версии одной страницы, что ускорит поиск нужного веб-сайта для пользователей. Есть три способа это сделать.

Элемент link в заголовке страницы. В раздел <head> страницы http://www.example.com/ добавьте элемент link, который переадресует пользователя на испанскую версию веб-сайта по адресу http://es.example.com/.

<link rel="alternate" hreflang="es" href="http://es.example.com/" />

HTTP-заголовок. Если вы публикуете файлы не в формате HTML (например, PDF), используйте HTTP-заголовок, чтобы указать URL на другом языке:

Link: <http://es.example.com/>; rel="alternate"; hreflang="es"

Если нужно добавить несколько атрибутов hreflang в элемент link заголовка страницы, разделите их запятыми:

Link: <http://es.example.com/>; rel="alternate"; hreflang="es",<http://de.example.com/>; rel="alternate"; hreflang="de"

Файл Sitemap. Сведения о языковой версии можно указывать не с помощью разметки, а в файле Sitemap.
Если у вас несколько версий на разных языках, то в коде каждой из них должны быть указаны атрибуты для всех вариантов.  Например, если ваш сайт предлагает контент для носителей французского, английского и испанского языков, то в адрес страницы на испанском должен быть включен собственный атрибут rel="alternate" hreflang="x", а также ссылки на остальные версии. То же самое касается страниц на французском и английском.

Вы можете разместить версии сайта на нескольких языках как в одном домене, так и в разных.
Если для людей, которые говорят на одном языке, но находятся в разных регионах, предназначено несколько альтернативных страниц, рекомендуется также создать общий URL для пользователей, не связанных с определенной страной. Например, вы можете предложить отдельные URL для англоговорящих жителей Ирландии (en-ie), Канады (en-ca) и Австралии (en-au). Но вместе с тем жители других стран, которые понимают английский язык, смогут попадать на общую версию сайта (en). В этом случае вам следует указать общую страницу на английском языке (en), например для поисковых запросов из Великобритании. Вы можете обозначить эту группу страниц при помощи файла Sitemap или HTML-тегов link следующим образом:

<link rel="alternate" href="http://example.com/en-ie" hreflang="en-ie" />
<link rel="alternate" href="http://example.com/en-ca" hreflang="en-ca" />
<link rel="alternate" href="http://example.com/en-au" hreflang="en-au" />
<link rel="alternate" href="http://example.com/en" hreflang="en" />

Если вы используете на главной странице меню выбора языка и страны или автоматическую переадресацию главной страницы на определенную языковую версию, необходимо указать параметр hreflang со значением "x-default":

<link rel="alternate" href="http://example.com/" hreflang="x-default" />

Допустимые значения языковых атрибутов
Атрибут hreflang указывает на язык (в формате ISO 639-1) и, при необходимости, регион (в формате ISO 3166-1 Alpha 2) альтернативного URL.

Например:

de – содержание на немецком языке для любого региона;
en-GB – содержание на английском языке для пользователей из Великобритании;
de-ES – содержание на немецком языке для пользователей из Испании.
Не указывайте код страны. Google не может автоматически определить язык по коду страны. Вы можете использовать код языка  и добавлять после него код страны, чтобы открыть доступ к странице только для отдельного региона.  Примеры:
be – содержание на белорусском языке для любого региона (не бельгийский французский);
nl-be – содержание на нидерландском для пользователей из Бельгии;
fr-be – содержание на французском для пользователей из Бельгии.

Если в языке несколько систем письма, то нужный вариант выбирается с учетом кода страны. Например, для пользователей из Тайваня с кодом zh-TW будет автоматически задан традиционный китайский язык. Набор символов также можно задать явно с помощью кодов ISO 15924, как показано ниже:

zh-Hant – традиционный китайский;
zh-Hans – упрощенный китайский.
Кроме того, можно указать комбинацию языка и региона. Например, zh-Hans-TW означает упрощенный китайский для пользователей из Тайваня.

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

Распространенные ошибки
Обязательно указывайте действительное значение атрибута hreflang. Обратите внимание на следующие распространенные ошибки:

Нет обратных ссылок. Если страница А ссылается на страницу Б, то вторая страница должна содержать обратную ссылку на первую. В противном случае атрибуты могут быть не прочтены или неправильно определены.
Неверные языковые коды. Все языковые коды должны указывать на язык (в формате ISO 639-1) и, при необходимости, регион (в формате ISO 3166-1 Alpha 2) альтернативного URL. Нельзя указывать только регион.

2

Re: Как использовать атрибут hreflang для указания языка

http://example.com/ru-ru: для русскоговорящих пользователей в России;
http://example.com/ru-ua: для русскоговорящих пользователей в Украине;
http://example.com/ru-kz: для русскоговорящих пользователей в Казахстане;
http://example.com/: главная страница по умолчанию для всех пользователей, на которой можно выбрать нужный язык.

В этом случае веб-мастер может выделить группу страниц с помощью атрибута rel-alternate-hreflang, используя файл Sitemap или такие ссылки:



<link rel="alternate" href="http://example.com/ru-ru" hreflang="ru-ru" />
<link rel="alternate" href="http://example.com/ru-ua" hreflang="ru-ua" />
<link rel="alternate" href="http://example.com/ru-kz" hreflang="ru-kz" />
<link rel="alternate" href="http://example.com/" hreflang="x-default" />

Соответственно значение атрибута hreflang только для русскоговорящих пользователей в России

<link rel="alternate" href="http://example.com/ru-ru" hreflang="ru-ru" />

Значение атрибута x-default hreflang говорит, что у данной страницы нет определенных языковых или региональных настроек, т. е. это страница по умолчанию. Например, пользователю из любой другой страны будет показана именно такая страница.

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