For the complete documentation index, see llms.txt. This page is also available as Markdown.

Настройка языков

iEXExchanger поддерживает мультиязычность как для публичного сайта, так и для панели управления.

Все основные языковые настройки выполняются в административной панели. Дополнительно Frontend использует параметры из файла .env, которые определяют, какие языки доступны для Angular SSR.

Для корректной работы языка он должен быть:

  • включён в административной панели;

  • указан в .env Frontend;

  • присутствовать в сборке Frontend.

Если хотя бы одно из этих условий не выполнено, язык может работать некорректно или быть недоступен.


Какие языки поддерживаются

В текущей версии доступны следующие языки:

Код
Язык
Сайт
Панель управления

ru

Русский

en

English

zh

简体中文

es

Español

fr

Français

kk

Қазақша

pl

Polski

uk

Українська

ka

ქართული

Важно:

  • ka — грузинский язык.

  • kk — казахский язык.

Разница между языками сайта и панели управления

В системе существуют два независимых набора языков.

1

Языки сайта

Используются для публичной части обменного пункта и клиентского кабинета.

Например:

Именно эти языки видят ваши клиенты.

2

Языки панели управления

Используются только администраторами и менеджерами.

Они никак не влияют на языки публичного сайта.

Например, можно использовать следующую схему:

В этом случае посетители смогут пользоваться четырьмя языками сайта, а сотрудники панели управления — только двумя.


Настройка языков в административной панели

Откройте раздел: «Настройки» — «Общие настройки» — «Основное» и найдите «Регион и языки»

Именно здесь выполняется основная настройка мультиязычности.


Язык админки по умолчанию

Поле: Язык админки по умолчанию

Определяет язык страницы входа и панели управления до того момента, пока пользователь не выберет другой язык самостоятельно.

Эта настройка влияет только на административную панель и не изменяет язык публичного сайта.

Например: Русский или English

Языки сайта и порядок

Поле: Языки сайта и порядок

Определяет, какие языки будут доступны посетителям сайта.

В этом разделе можно:

  • включить нужные языки;

  • отключить неиспользуемые;

  • изменить порядок отображения.

Порядок языков определяет, в каком порядке они будут отображаться в переключателе языка на сайте.

Например:

или

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

Не стоит активировать все языки, если часть из них не переведена или не используется.

Языки панели администратора

Поле: Языки панели администратора

Определяет, какие языки доступны администраторам и менеджерам внутри панели управления.

В этом разделе также можно:

  • включить нужные языки;

  • отключить лишние;

  • изменить порядок отображения.

Рекомендуется оставлять только те языки, на которых действительно работают сотрудники.

Например:

или

Как выбрать язык

После включения языков каждый пользователь может самостоятельно выбрать удобный язык.

1

На сайте

Переключатель языка находится в верхней части сайта рядом с основным меню.

После выбора языка сайт автоматически откроется на выбранной языковой версии.

Например: https://ваш_домен/en/ или https://ваш_домен/fr/

2

В панели управления

После входа в административную панель язык можно изменить в любое время.

Переключатель языка расположен в правом верхнем углу панели управления рядом с профилем пользователя.

Каждый администратор или менеджер может выбрать язык независимо от других пользователей.

Это изменение влияет только на его собственную панель управления.


Настройка языков в Frontend

Кроме административной панели, список доступных языков необходимо указать в файле .env Frontend.

Файл находится в корне основного сайта:

Файлы сайта в FastPanel

Основные параметры:

SUPPORTED_LANGUAGES

Определяет языки, которые разрешены для Angular SSR.

DEFAULT_LANGUAGE

Определяет язык по умолчанию для Angular SSR.

Например, только русский и английский:

Или все поддерживаемые языки:

После изменения файла необходимо перезапустить Frontend:

Подключение к серверу по SSH

Важное правило

Для корректной работы язык должен одновременно существовать:

  • в сборке Frontend;

  • в папке dist/exchanger/browser/<код_языка>;

  • в параметре SUPPORTED_LANGUAGES;

  • в списке языков сайта в административной панели.

Например, если указать: SUPPORTED_LANGUAGES=ru,en,fr

но в сборке отсутствует папка: dist/exchanger/browser/fr язык работать не будет.

Проверка языковых сборок

Проверьте наличие языковых папок:

Для полной мультиязычной сборки должны присутствовать:

Также должна существовать серверная часть Angular SSR:

Как работает переключатель языка

Список языков на сайте формируется автоматически из настройки: Языки сайта и порядок

Например, если включены только:

то посетители увидят только русский и английский языки, даже если Frontend поддерживает больше языков.

Как работает язык при обращении к Backend

Когда пользователь открывает сайт на определённом языке, Frontend автоматически передаёт активный язык в Backend.

Например: https://example.com/en/

Backend получает язык: en

Благодаря этому Backend возвращает данные сразу на нужном языке:

  • названия валют;

  • направления обмена;

  • уведомления;

  • ошибки;

  • текстовые блоки;

  • SEO-информацию;

  • другой клиентский контент.

Нужно ли настраивать языки в Nginx

Нет.

Начиная с новой версии iEXExchanger, Nginx больше не управляет языками сайта.

Не нужно добавлять:

Все языковые маршруты, редиректы и определение языка выполняет Angular SSR.

Задача Nginx — только передавать запросы на Frontend.


Рекомендуемые варианты настройки

1

Только русский язык

.env

Админка:

2

Русский и английский

.env

Админка:

3

Международный сайт

.env

Админка:

Частые ошибки

Язык выбран в админке, но не открывается

Проверьте:

  • указан ли язык в SUPPORTED_LANGUAGES;

  • существует ли папка языка в dist/exchanger/browser.

Язык указан в.env, но отсутствует в переключателе

Проверьте настройку:

Именно она определяет список языков на сайте.

После изменения .env ничего не изменилось

Перезапустите Angular SSR:

На сайте появляются адреса вида

Причина почти всегда заключается в старых языковых правилах Nginx.

Удалите все старые языковые map и location.

В панели управления отсутствуют польский или грузинский языки

Это нормально.

В текущей версии:

  • pl;

  • ka;

используются только для публичного сайта и клиентского кабинета.


Коротко

Для корректной работы мультиязычности необходимо выполнить три условия:

  • включить нужные языки в административной панели;

  • указать их в SUPPORTED_LANGUAGES Frontend;

  • убедиться, что они присутствуют в сборке Angular SSR.

Рекомендуется включать только те языки, которые действительно используются вашим обменным пунктом. Это упрощает сопровождение проекта и делает интерфейс более удобным для клиентов и сотрудников.

Последнее обновление

Это было полезно?