Налаштування мультимовності MODX (Babel/LangRouter)

Мультимовність MODX без продуманої архітектури перетворюється на хаос: дублікати сторінок, зламані hreflang і ручне перенесення контенту. Ми налаштовуємо мультимовність на Babel або LangRouter під ключ — з урахуванням структури вашого сайту та завдань SEO. Наша команда бере на себе весь цикл: аудит, вибір підходу, впровадження та підтримку, щоб сайт коректно індексувався та легко масштабувався.

Розробка та обслуговування будь-яких видів сайтів:

Інформаційні сайти або веб-програми
Сайти візитки, landing page, корпоративні сайти, онлайн каталоги, квіз, промо-сайти, блоги, ресурси новин, інформаційні портали, форуми, агрегатори
Сайти або веб-програми електронної комерції
Інтернет-магазини, B2B-портали, маркетплейси, онлайн-обмінники, кешбек-сайти, біржі, дропшиппінг-платформи, парсери товарів
Веб-програми для управління бізнес-процесами
CRM-системи, ERP-системи, корпоративні портали, системи управління виробництвом, парсери інформації
Сайти або веб-програми електронних послуг
Дошки оголошень, онлайн-школи, онлайн-кінотеатри, конструктори сайтів, портали надання електронних послуг, відеохостинги, тематичні портали

Це лише деякі з технічних типів сайтів, з якими ми працюємо, і кожен із них може мати свої специфічні особливості та функціональність, а також бути адаптованим під конкретні потреби та цілі клієнта.

Послуги, які ми пропонуємо
Показано 1 з 1Усі 2062 послуг
Налаштування мультимовності MODX (Babel/LangRouter)
Середній
~2-3 дні
Часті запитання

Після додавання другої мови сайт перестав знаходитися в пошуку — дублі сторінок, зникли hreflang, а контент вручну переносити втомився. Типова ситуація для MODX: без правильної архітектури мультимовність перетворюється на пекло.

Ми реалізували безліч мультимовних проєктів і знаємо, як уникнути цих грабель. Нижче — два перевірені підходи: Babel (контексти) та LangRouter (один контекст). Babel надійніший за LangRouter у 2–3 рази для великих проєктів, але не завжди потрібен.

Як вибрати між Babel і LangRouter?

Коли потрібні контексти з Babel?

Контексти з Babel — стандарт для сайтів з об'ємним контентом: інтернет-магазини, портали, новинні стрічки. Кожна мова отримує окреме дерево ресурсів, свої шаблони та налаштування. Babel пов'язує відповідні сторінки різних контекстів, щоб перемикач працював коректно.

Економія на підтримці — до 40% завдяки чіткому розділенню. Наприклад, на одному з проєктів з трьома мовами (російська, англійська, німецька) ми скоротили час на додавання нового контенту на 35% після впровадження Babel.

Коли достатньо LangRouter?

LangRouter підходить, якщо контент однаковий на всіх мовах — наприклад, корпоративний сайт з кількома сторінками. Він працює в одному контексті, перемикає мову через префікс URL і змінює cultureKey. Мінус: усі ресурси змішані, складніше керувати перекладами. Окупність налаштування — за 2–3 місяці.

Чому Babel кращий для SEO?

Babel дозволяє задати точні hreflang-посилання для кожної пари ресурсів. Це критично для ранжування в різних регіонах: без правильного hreflang пошукові системи бачать дублікати й знижують сайт. Babel також підтримує x-default, що вказує на основну версію.

LangRouter не дає такої гнучкості — hreflang доводиться налаштовувати вручну через чанки. Як зазначено в документації Babel, Babel автоматично генерує hreflang для пов'язаних ресурсів, що знижує ризик помилок на 60%.

Покрокове налаштування Babel

  1. Встановіть Babel через Package Manager.
  2. Налаштуйте системні параметри — укажіть контексти, їх префікси.
  3. Створіть ресурси в кожному контексті та зв'яжіть їх через Babel.
  4. Додайте перемикач мов за допомогою BabelLinks.
  5. Налаштуйте hreflang для SEO.

Встановлення та конфігурація

// Package Manager → Babel

Системні налаштування Babel:

babel.sites = web,en,de babel.contextPrefix_en = en/ babel.contextPrefix_de = de/ babel.contextPrefix_web =

Виведення перемикача мов

[[!BabelLinks? &tpl=`@INLINE <a href="[[+url]]" hreflang="[[+cultureKey]]" class="lang-switch [[+active:is=`1`:then=`lang-switch--active`]]"> [[+cultureKey:upper]] </a> ` &activeCls=`active` ]]

BabelLinks автоматично створює посилання на пов'язані ресурси в інших контекстах.

hreflang для SEO

[[!BabelLinks? &tpl=`@INLINE <link rel="alternate" hreflang="[[+cultureKey]]" href="[[+url]]">` &toPlaceholder=`hreflang` ]]
<head>
  [[+hreflang]]
  <link rel="alternate" hreflang="x-default" href="[[++site_url]]">
</head>

Типові помилки при налаштуванні мультимовності

  • Відсутність зв'язку ресурсів у Babel. Якщо не зв'язати ресурси різних контекстів, перемикач мов буде вести на головну або 404. Завжди перевіряйте зв'язки після створення нового ресурсу.
  • Неправильні префікси контекстів. Якщо префікс не відповідає фактичному URL, hreflang зламається. Переконайтеся, що префікси збігаються з налаштуваннями сервера.
  • Ігнорування x-default. Без x-default пошуковик може сам вибрати мову для регіону, що знижує релевантність. Обов'язково додайте link з hreflang="x-default" на основну версію.

Порівняння Babel і LangRouter

Параметр Контексти + Babel LangRouter
Розділення контенту Повне (власні ресурси) Одне дерево (TV або лексикони)
Підходить для Великі сайти, інтернет-магазини Невеликі проєкти, корпоративні сайти
Надійність Висока (різні контексти) Середня (один контекст)
Складність налаштування Середня (контексти + зв'язки) Низька (один пакет)
Гнучкість Максимальна (власні шаблони та налаштування) Обмежена

Терміни налаштування (орієнтовно)

Підхід Терміни (робочі дні) Складність
Контексти + Babel 2–3 Середня
LangRouter 1–2 Низька

Що входить у роботу з налаштування мультимовності

  • Аналіз архітектури — вибір підходу (Babel/LangRouter), оптимізація.
  • Налаштування контекстів (якщо Babel): створення, прив'язка доменів.
  • Встановлення та конфігурація Babel/LangRouter.
  • Створення зв'язків ресурсів (для Babel).
  • Розробка перемикача мов.
  • Налаштування hreflang, sitemap для кожної мови.
  • Документація та навчання: передача інструкцій щодо додавання нових мов.
  • Гарантія: виправлення помилок протягом 30 днів після здачі.

Терміни та гарантії

Налаштування двох мов через Babel з перемикачем і hreflang — від 2 до 3 робочих днів. При використанні LangRouter — швидше, від 1 дня. Рекомендуємо Babel (GitHub) для проєктів з високими вимогами до SEO. Ми гарантуємо стабільну роботу обраного рішення.

Щоб не помилитися з архітектурою, зв'яжіться з нами. Ми оцінимо ваш проєкт і підберемо оптимальне рішення. Отримайте консультацію щодо налаштування мультимовності — ми підберемо оптимальний підхід для вашого проєкту.

Наші компетенції:

Останні роботи

  • Розробка сайту компанії B2B ADVANCE
    Розробка сайту компанії B2B ADVANCE
    1543
  • Розробка веб-додатків для компанії FEEDME
    Розробка веб-додатків для компанії FEEDME
    1394
  • Розробка веб-сайту для компанії БЕЛФІНГРУП
    Розробка веб-сайту для компанії БЕЛФІНГРУП
    1081
  • Розробка інтернет магазину для компанії FURNORO
    Розробка інтернет магазину для компанії FURNORO
    1369
  • Розробка веб-додатків для компанії Enviok
    Розробка веб-додатків для компанії Enviok
    1142
  • Розробка веб-сайту для компанії ФІКСПЕР
    Розробка веб-сайту для компанії ФІКСПЕР
    1060