Мультиязычная интернационализация и локализация
Локализация — очень важный аспект при управлении контентом. В Pimcore локализация настраивается централизованно и влияет на множество компонентов системы.
В итоге, использование Pimcore в мультиязычном режиме достаточно просто как для пользователей, так и для разработчиков. Pimcore берет на себя все технические детали и при этом следует паттернам Symfony.
Pimcore использует разные наборы языков/локалей и переводов для бэкенда (CMS) и фронтенда (веб-сайта). Это позволяет иметь интерфейс Pimcore на одном языке, а сайт — на другом. Это важно учитывать при запросе текущих и доступных локалей, поскольку они различаются в зависимости от контекста. Например, если пользователь сохраняет объект в Pimcore, у которого в настройках выбран английский, то текущая локаль будет отличаться от локали посетителя французского сайта, который инициирует действие сохранения.
Локализация контента
Конфигурация языков
Доступные языки для контента настраиваются централизованно в системных настройках (Settings > System Settings > Localization & Internationalization (i18n/l10n)).

Здесь можно определить следующие параметры:
- Доступные языки
- Системный язык по умолчанию
- Резервный язык (fallback) для каждого языка: если он задан, Pimcore возвращает значения из резервного языка в том случае, если в основном языке значения не заданы.
- Опцию, указывающую, должен ли контент для данного языка быть обязательным в локализованных полях объектов данных. Подробности см. здесь
Примечание: удаление языка из списка Localization & Internationalization (i18n/l10n) не удаляет соответствующие данные. Для очистки используйте консольную команду
pimcore:locale:delete-unused-tables.
Области локализованного контента
Активированные языки влияют на следующие модули контента в Pimcore:
- Документы — локализация (системное свойство для языка)
- Общие переводы (компонент переводов Symfony)
- Локализованные поля для объектов (локализация объекта)
- Поля структурированных данных - хранилище классификации
Локализация пользовательского интерфейса бэкенда Pimcore
Локализация UI бэкенда Pimcore независима от локализации контента, но работает аналогично Shared Translations. Практически любой текст в бэкенде Pimcore может быть переведен, однако существуют два разных источника переводов — системные переводы Pimcore и проектные (специфичные для проекта) переводы.
Системные переводы Pimcore
Эти переводы охватывают все метки и тексты внутри Pimcore, которые поставляются в составе пакета установки. Стандартный язык этих переводов — английский, он поддерживается командой ядра. Кроме того, к проекту переводов Pimcore может присоединиться любой желающий, чтобы добавить системные переводы на дополнительные языки. С каждым релизом Pimcore новые переводы включаются в пакет установки. Системные переводы можно переопределять с помощью Admin Translations.
Вы можете предложить улучшение документации или задать вопрос в комментариях.
Если вам нужна полноценная консультация — вы можете заказать её на нашем сайте.