БесплатноБесплатный прототип ключевой страницы и черновик ТЗ при старте проекта

Многоязычный сайт на Битрикс: подводные камни локализации и SEO для разных языков

Многоязычный сайт на 1С-Битрикс: модуль многоязычности, структура URL по языкам и разметка hreflang

Компания выходит на новый языковой рынок, переводит каталог и главную страницу — и через месяц обнаруживает, что английская версия не индексируется, а в Google Search Console копится десяток предупреждений про hreflang. Проблема почти всегда не в переводе, а в технической части: структуре URL, разметке языковых версий и связях между ними, которые поисковик использует, чтобы понять, какую версию страницы показать какому пользователю.

Эта статья — о том, как правильно завести многоязычность на 1С-Битрикс технически: от выбора схемы URL до расстановки hreflang и локализации того, что обычно забывают — меню, чекаута, юридических страниц. Если задача — именно многоязычный каталог (торговые предложения, цены и остатки по языкам), это отдельная тема — подробно она разобрана в статье «Многоязычный каталог в 1С-Битрикс»; здесь мы разбираем сайт целиком. Материал опирается на нашу практику разработки многоязычных сайтов на 1С-Битрикс.

Коротко

  • Штатный модуль многоязычности Битрикса привязывает контент и структуру к нескольким сайтам ядра — по одному на язык, с общим ядром данных.
  • Для большинства проектов лучший вариант структуры URL — подпапки (/en/, /de/): проще в поддержке и наследуют вес домена.
  • Hreflang должен быть двусторонним и полным: каждая языковая версия ссылается на все остальные, включая саму себя.
  • Локализация — это не только каталог: меню, футер, чекаут, юридические страницы и уведомления должны переключаться вместе с языком.
  • Валюта и единицы измерения — отдельная сущность от языка, их нельзя жёстко привязывать друг к другу.

С чего начинается многоязычный сайт

Прежде чем открывать модуль многоязычности в админке, стоит развести два разных, но часто путаемых понятия. Локализация — это перевод и адаптация контента: текстов, интерфейса, форм, юридических документов. Интернационализация — это техническая инфраструктура, которая делает локализацию возможной: структура URL, кодировки, разметка языковых версий для поисковика, механизм переключения языка. Ошибка большинства проектов — начинать с перевода текстов, не решив вопросы интернационализации, и потом переделывать URL и разметку задним числом на уже проиндексированном сайте.

Правильный порядок обратный: сначала фиксируется структура URL и техническая связка языковых версий, затем — перевод контента по приоритету (об этом отдельный раздел ниже). Такой порядок экономит месяцы, потому что смена схемы URL уже после индексации означает по сути повторный запуск сайта для поисковика — с временной просадкой трафика на всех языках, а не только на новом.

Важно: решение о структуре URL (подпапки, поддомены или домены) нужно принять один раз и на годы вперёд. Миграция между схемами — это полный редизайн ЧПУ с 301-редиректами по всему сайту и временной потерей позиций на период переиндексации.

Модуль многоязычности в 1С-Битрикс

Технически многоязычность в 1С-Битрикс строится не на «переключателе текста», а на модуле «Многосайтовость» в связке с языковыми версиями (LANG_ID) ядра. Каждый язык — это фактически отдельный «сайт» в терминах Битрикса: свой SITE_ID, свой корневой каталог шаблонов (или общий шаблон с языковыми файлами), своя привязка контента инфоблоков.

Из этого устройства вытекают практические следствия:

Часть контента типично делают общей для всех языков (структура каталога, логика скидок, интеграция с 1С), а часть — переводимой построчно (названия, описания, метатеги, статьи блога). Проектировать эту границу — общее/переводимое — нужно на старте, а не когда переводчик уже начал работу над контентом.

Одно ядро — несколько языковых сайтов Ядро и инфоблоки данных общий каталог, модули, обмен с 1С SITE_ID = ru site.ru/ основной язык SITE_ID = en site.ru/en/ английский SITE_ID = de site.ru/de/ немецкий
Схема: общее ядро с данными и модулями обслуживает несколько языковых «сайтов» Битрикса, каждый со своим SITE_ID и языковыми файлами интерфейса.

Структура URL: подпапки, поддомены, ccTLD

Выбор схемы URL для языковых версий влияет и на SEO, и на стоимость поддержки. У Битрикса нет жёсткого технического ограничения — все три схемы реализуемы через модуль многосайтовости и настройку доменов сайтов, — поэтому решение принимается по бизнес-критериям.

СхемаПримерПлюсыМинусы
Подпапкиsite.ru/en/Наследует вес и траст домена, дешевле SSL и DNS, проще запуститьВсе языки формально «под одной крышей» для геосервисов
Поддоменыen.site.ruМожно развести на разную инфраструктуру/CDN по языкуКаждый поддомен поисковик отчасти оценивает отдельно, нужен wildcard SSL
ccTLD (домены стран)site.deСильнейший сигнал локальности для пользователя и поисковикаДорого: отдельные домены, хостинг, юрлицо, SSL, независимый SEO-вес с нуля

Практическая рекомендация для большинства B2B- и B2C-сайтов, выходящих на 1–3 новых языка без открытия локальных юрлиц: подпапки. Они дают предсказуемое поведение hreflang, единый TLS-сертификат на домен и минимальные накладные расходы на инфраструктуру. Поддомены оправданы, когда под язык/регион действительно нужна независимая техническая инфраструктура — например, отдельные серверы в юрисдикции страны по требованиям локального законодательства. ccTLD имеет смысл только при полноценном локальном присутствии: местный склад, локальные платёжные методы, локальная поддержка.

Hreflang: как работает разметка и почему её так легко сломать

Тег hreflang — это не про перевод сайта, а про указание поисковику соответствия между языковыми версиями одной и той же страницы. Он отвечает на вопрос «какую из версий этой страницы показать пользователю с таким-то языком интерфейса или регионом» и не влияет напрямую на ранжирование — только на выбор правильной версии в выдаче.

Разметка выводится либо тегами <link rel="alternate" hreflang="..."> в <head> каждой страницы, либо через HTTP-заголовки (для не-HTML документов), либо через отдельный hreflang-sitemap. Для большинства сайтов на Битрикс удобнее теги в head — их проще вывести программно из компонента страницы, где заведомо известны все языковые аналоги текущего URL.

Ключевое правило, которое чаще всего нарушают: разметка должна быть полной и двусторонней. Если страница на русском ссылается на английскую версию через hreflang, английская версия обязана содержать обратную ссылку на русскую — и обе страницы должны включать ссылки на все остальные языковые версии, включая саму себя (self-referencing hreflang).

Полный набор hreflang: каждая версия ссылается на все, включая себя / (ru) hreflang="ru" + ссылки на en, de /en/ (en) hreflang="en" + ссылки на ru, de /de/ (de) hreflang="de" + ссылки на ru, en + hreflang="x-default" на версию по умолчанию
Схема: правильная разметка — это полный граф ссылок между всеми языковыми версиями одной страницы, а не однонаправленная связь «оригинал → перевод».

На практике самый надёжный способ не сломать этот граф вручную — генерировать hreflang программно на основе структуры «одна сущность (раздел/элемент инфоблока) — несколько языковых версий», а не копипастом в шаблоне. Если карточка товара существует на трёх языках, компонент должен на основе внешнего идентификатора элемента (XML_ID, общего для всех языковых версий одного товара) собрать полный список альтернатив и вывести их за один проход, без ручных правок под каждый язык.

Локализация шире каталога: меню, чекаут, юридические страницы

Перевод карточек товаров — самая заметная, но не самая рискованная часть локализации. Реальные провалы запуска чаще случаются в местах, которые не тестируют на этапе приёмки, потому что они «и так работают»:

Практика: перед запуском пройдите весь путь покупателя на каждом языке от главной до подтверждения заказа как реальный пользователь — не полагайтесь на выборочную проверку отдельных страниц. Чекаут — это место, где отсутствие локализации стоит дороже всего.

Валюта, единицы измерения и региональные форматы

Частая ошибка проектирования — жёстко привязать валюту и единицы измерения к языку интерфейса. Это работает только для примитивного случая «один язык — одна страна», но ломается на реальных рынках: франкоязычный посетитель может быть в Швейцарии (франки) или в Бельгии (евро), а немецкоязычный — в Германии, Австрии или Швейцарии с разными валютами.

В 1С-Битрикс валюта и региональные типы цен — самостоятельные сущности каталога, не завязанные напрямую на LANG_ID. Правильная архитектура: язык переключает интерфейс и контент, а валюту пользователь выбирает независимо (вручную или по определённой по IP стране — но с возможностью переопределить). Единицы измерения (метры/футы, кг/фунты) в карточках товаров также стоит привязывать к региону показа, а не к языку — через свойства инфоблока или множитель пересчёта в шаблоне.

ПараметрПривязывать кПочему
Текст интерфейса и контентЯзыку (LANG_ID)Один язык может обслуживать несколько стран
ВалютаРегиону/выбору пользователяОдин язык — несколько валют (франкоговорящие страны, например)
Единицы измеренияРегиону показаМетрическая/имперская система не совпадает с языковыми границами
Формат даты и телефонаРегиону/локалиЛокаль (en-US, en-GB) может отличаться при общем языке

Запуск многоязычного сайта пошагово

  1. Определите схему URL. Подпапки, поддомены или ccTLD — зафиксируйте решение на старте, миграция между схемами дорога.
  2. Настройте сайты в модуле многосайтовости. По одному SITE_ID на язык, с корректной привязкой доменов/путей и языковых файлов.
  3. Определите модель данных. Какие инфоблоки общие для языков, какие — раздельные; как хранится связь «одна и та же карточка на разных языках» (общий внешний XML_ID).
  4. Выведите hreflang программно. На основе связки элементов по языкам, а не вручную в шаблоне — чтобы граф ссылок оставался полным при добавлении новых страниц.
  5. Отделите валюту и регион от языка. Дайте пользователю переключать их независимо, с разумным значением по умолчанию по геолокации.
  6. Переведите по приоритету. Сначала — путь покупки целиком (каталог → карточка → корзина → чекаут → письма), затем — второстепенный контент.
  7. Проверьте в Google Search Console и Яндекс.Вебмастере. Отчёты по международному таргетингу и hreflang покажут конкретные ошибки разметки до того, как их найдут пользователи.

Реализация в 1С-Битрикс: где это настраивается

Основные точки настройки многоязычности живут в разделе управления сайтами и в языковых файлах компонентов. Условно интерфейс выглядит так:

Настройки → Система → Сайты SITE_ID Домен / путь Язык Перевод rusite.ru /Русский 100% ensite.ru /en/English 92% desite.ru /de/Deutsch 61% Hreflang Генерируется автоматически по связке XML_ID 3 языка · x-default = ru · последняя проверка: без ошибок
Схема: настройка сайтов задаёт SITE_ID, домен/путь и язык каждой версии; готовность перевода и корректность hreflang стоит отслеживать как метрику проекта, а не разовую задачу.

Canonical и склейка языковых дублей

Отдельная проблемная зона — взаимодействие hreflang и canonical. Частая ошибка: на каждой языковой версии стоит canonical, указывающий на основную (например, русскую) версию сайта. Это противоречит самой идее hreflang: canonical говорит «это дубль, настоящая версия — там», а hreflang говорит «это равноправная версия для своего языка» — при конфликте между ними поисковики в лучшем случае игнорируют hreflang, в худшем — не индексируют переводные версии вовсе.

Правильное правило: каждая языковая версия страницы — self-canonical, то есть указывает сама на себя, а не на версию на другом языке. Canonical на другую версию уместен только внутри одного языка — например, для страниц с параметрами сортировки или UTM-метками, которые должны канонизироваться на чистый URL того же языка.

Стратегия контента: что переводить в первую очередь

Переводить весь сайт целиком и сразу — редко посильная и редко оправданная задача, особенно для крупного каталога. Разумная стратегия — приоритизация по вкладу в конверсию и трафик, а не по формальной полноте:

ПриоритетЧто переводитьПочему в первую очередь
1Путь покупки: главная, топ-категории, чекаут, письмаБез этого локализация не конвертирует трафик вообще
2Топ-товары по спросу на новом рынкеОсновной источник органического трафика на новом языке
3Юридические страницы, условия доставки/оплатыЧасто обязательны юридически и снимают возражения перед покупкой
4Остальной каталогМожно наращивать поэтапно, машинный перевод как черновик
5Блог и второстепенный контентНизкий приоритет для запуска, важен для долгосрочного SEO

Частые ошибки, которые путают поисковики

Мини-FAQ. Может ли отсутствие hreflang полностью «уронить» видимость переводной версии в поиске? Нет, страница может индексироваться и без hreflang — но поисковик будет хуже сопоставлять её с языковым запросом пользователя, и трафик на переводные версии будет ниже потенциального.

Чек-лист запуска многоязычного сайта

  1. Схема URL зафиксирована. Подпапки/поддомены/ccTLD выбраны осознанно и не планируются к смене в обозримом будущем.
  2. Каждая языковая версия — отдельный SITE_ID. С корректной привязкой домена/пути и языковых файлов интерфейса.
  3. Hreflang выводится программно и полон. Двусторонние ссылки между всеми языками, включая self-reference и x-default.
  4. Canonical не конфликтует с hreflang. Каждая версия — self-canonical.
  5. Путь покупки переведён целиком. Меню, каталог, корзина, чекаут, письма — без непереведённых фрагментов.
  6. Валюта и единицы измерения отделены от языка. Пользователь может переключить их независимо.
  7. Юридические страницы локализованы. Оферта, политика конфиденциальности, условия доставки — под требования конкретной страны.
  8. Отчёты Search Console/Вебмастера без ошибок hreflang. Проверено после индексации всех языковых версий.

Вывод

Многоязычный сайт на 1С-Битрикс технически устроен просто — модуль многосайтовости и языковые файлы решают базовую задачу. Сложность не в запуске механизма, а в дисциплине: правильно выбранная раз и навсегда структура URL, полная двусторонняя разметка hreflang без конфликта с canonical и локализация, которая не останавливается на каталоге, а доходит до чекаута и юридических страниц. Сделайте это на старте — и каждый новый язык будет добавляться без риска обрушить позиции уже работающих версий.

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

Что лучше для многоязычного сайта на Битрикс — поддомены, подпапки или отдельные домены?

Для большинства проектов оптимальны подпапки по языку (/en/, /de/) на одном домене: они наследуют вес и трастовость основного домена, проще в администрировании и дешевле в поддержке SSL и DNS. Поддомены (en.site.ru) уместны, если под разные языки нужна разная инфраструктура или юрлицо. Отдельные ccTLD (site.de) оправданы только при полноценном локальном бизнесе в стране — своя команда, локальный хостинг, локальные платежи.

Обязательно ли делать hreflang, если сайт всего на двух языках?

Да. Без hreflang поисковик сам решает, какую языковую версию показать пользователю по геолокации и языку браузера, и часто ошибается — например, показывает русскоязычному пользователю в Казахстане английскую версию. Тегов немного, ошибка внедрения обходится дороже, чем разметка двух языков.

Нужен ли отдельный тег hreflang="x-default"?

Да, если у сайта есть версия по умолчанию — та, что показывается пользователям, чей язык не совпал ни с одним из размеченных. Обычно это версия на языке домена или международная версия на английском. Без x-default часть трафика без определённого языкового соответствия может попадать на случайную версию.

Как быть с валютой и единицами измерения, если каталог один, а языков несколько?

Валюта и единицы измерения — это не то же самое, что язык, и привязывать их напрямую к языковой версии нельзя: франкоязычный пользователь может быть и в Швейцарии (франки), и в Бельгии (евро). В Битриксе это решается через привязку валюты и типа цен к региону/сайту, а не к LANG_ID, с возможностью ручного переключения валюты независимо от языка интерфейса.

Что делать с страницами, которые ещё не переведены на все языки?

Не создавайте пустые или машинно переведённые заглушки только ради полноты структуры — это риск попасть под фильтр низкокачественного контента. Для непереведённых разделов либо не создавайте языковую версию вовсе (и не ссылайтесь на неё через hreflang), либо явно показывайте баннер «страница пока доступна только на русском» без дублирования контента.

Может ли автоматический (машинный) перевод каталога навредить SEO?

Сырой машинный перевод без редактуры — да, особенно в больших объёмах: поисковики распознают шаблонный машинный текст низкого качества и хуже ранжируют такие страницы. Для карточек товаров машинный перевод допустим как черновик, но title, description, H1 и ключевые SEO-тексты категорий стоит доработать вручную или силами профильного переводчика.

Поделиться: Telegram ВКонтакте WhatsApp

Запускаете сайт на новый языковой рынок?

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

Редакция B2Bsite

Редакция студии B2Bsite. С 2014 года команда проектирует и оптимизирует интернет-магазины на 1С-Битрикс: SEO-структуру каталога, микроразметку Schema.org, умный фильтр и связку с обменом 1С для среднего и крупного бизнеса.

← Все статьи блога