Локализация без боли: Как мы внедряли мультиязычность на Powerway
Когда встала задача сделать сайт Powerway доступным для иностранных клиентов, мы поняли: просто «накрутить» переводчик недостаточно. Главной проблемой была архитектура — старые URL-адреса и жесткая привязка контента к одной локали.
Решение:
Мы выбрали подход с префиксами в URL (/ua/, /en/, /pl/) и переписали роутинг на уровне ядра. Вместо хранения переводов в БД (что тормозило выборку), мы вынесли статичные тексты в JSON-файлы с кешированием в Redis. Для динамических товаров связали переводы через таблицу связок, чтобы менеджеры могли править описание в админке, не залезая в код.
Результат:
Теперь поисковые роботы видят четкую структуру, а пользователь попадает на нужную языковую версию автоматически по заголовкам браузера. Время загрузки страницы при смене языка не увеличилось — спасибо lazy-loading для переводов.
Решение:
Мы выбрали подход с префиксами в URL (/ua/, /en/, /pl/) и переписали роутинг на уровне ядра. Вместо хранения переводов в БД (что тормозило выборку), мы вынесли статичные тексты в JSON-файлы с кешированием в Redis. Для динамических товаров связали переводы через таблицу связок, чтобы менеджеры могли править описание в админке, не залезая в код.
Результат:
Теперь поисковые роботы видят четкую структуру, а пользователь попадает на нужную языковую версию автоматически по заголовкам браузера. Время загрузки страницы при смене языка не увеличилось — спасибо lazy-loading для переводов.