hreflang
Что такое hreflang и зачем он нужен
hreflang — это атрибут, который появился в 2011 году как часть соглашения Google с Яндексом и Bing для решения проблемы мультиязычных и мультирегиональных сайтов. До его внедрения поисковые системы часто путали страницы, переведённые на разные языки, считая их дубликатами. Это приводило к тому, что в выдаче показывалась не та версия, а ранжирование размывалось. hreflang решает эту задачу: он явно указывает, что страница имеет альтернативные версии, и каждая из них предназначена для конкретной аудитории.
Атрибут добавляется в HTML-код страницы в виде пары тегов внутри секции
. Например:<link rel="alternate" hreflang="ru-ru" href="https://site.ru/" /> <link rel="alternate" hreflang="en-us" href="https://site.com/en/" /> <link rel="alternate" hreflang="x-default" href="https://site.com/" />
Значение hreflang состоит из кода языка (по стандарту ISO 639-1) и, опционально, кода страны (ISO 3166-1 alpha-2). Так, hreflang="ru-ru" означает русский язык для России, а hreflang="en-us" — английский для США. Если нужно указать версию для всех остальных, используется значение x-default — оно задаёт страницу по умолчанию.
Как работает hreflang в контексте SEO
Поисковая система, обрабатывая страницу, видит ссылки на альтернативы и понимает, что они связаны. Это позволяет роботу выбирать правильную версию для пользователя, учитывая его IP-адрес, языковые настройки браузера и поисковый запрос. Например, если человек ищет «купить кроссовки» из Германии, Google покажет ему страницу с hreflang="de-de", а не русскую или американскую версию. Без hreflang поисковик может проигнорировать региональные настройки и показать страницу, которая не соответствует ожиданиям пользователя, что увеличит показатель отказов.
Кроме того, hreflang предотвращает проблемы с дублирующим контентом. Если у вас есть одинаковый текст на русском и украинском, но с разными ценами, без hreflang поисковик может склеить эти страницы или выбрать одну, что приведёт к потере трафика. С hreflang вы явно говорите: «это разные страницы, но каждая нужна только своей аудитории», и поисковик учитывает это при индексации.
Практический пример: интернет-магазин с двумя языками
Представьте сайт, который продаёт товары в России и Казахстане. У вас есть две версии: https://site.ru (русский, Россия) и https://site.kz (русский, Казахстан). Хотя язык одинаковый, валюты и условия доставки отличаются, поэтому страницы должны быть разными. Без hreflang поисковик может не понять, какую версию показывать пользователю из Казахстана, и отдаст ему российскую версию с ценами в рублях. Добавив в
каждой страницы ссылки на альтернативы, вы решаете проблему: на странице .ru укажите , а на .kz — обратную ссылку на .ru. Плюс добавьте x-default на главную страницу, если хотите, чтобы она была запасным вариантом.Типичная ошибка: обратные ссылки и синтаксис
Самая частая ошибка при настройке hreflang — отсутствие обратных ссылок. Атрибут работает только в связке: если на странице A указана ссылка на страницу B, то на странице B обязательно должна быть ссылка на страницу A. Иначе поисковик проигнорирует разметку или посчитает её некорректной. Вторая по частоте ошибка — неправильный синтаксис: например, указание hreflang="ru" без страны (это допустимо, но не для региональных версий) или использование пробелов в значении. Также важно помнить, что hreflang не заменяет редиректы: если вы изменили структуру сайта, обязательно настройте 301-редирект со старых страниц на новые, иначе поисковик будет путаться.
Ещё одно распространённое заблуждение — что hreflang нужен только для сайтов с разными языками. Это не так: он обязателен, если у вас есть две версии одного языка, но для разных стран (например, английский для США и Великобритании). Игнорирование этого может привести к тому, что пользователи из Австралии увидят американскую версию с неверными ценами, что негативно скажется на конверсии. Не забывайте также про x-default — он помогает в ситуациях, когда язык пользователя не определён или не соответствует ни одной из ваших версий.