Общее описание и настройка

06 ноября 2018, 07:00

Описание компонента

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

"Из коробки" подходит для большинства небольших сайтов вроде "сайта-визитки" или несложного каталога.

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

Настройка компонента

Для работы компонента должны быть включены ЧПУ (friendly URLs)

Компонент требует установки pdoTools версии не ниже 2.8.2 (с версиями ниже компонент не тестировался).

Перед тем, как начать работу с компонентом, необходимо установить настройку ml_default_site_url. В нее необходимо записать URL сайта по-умолчанию. Например https://mysite.ru/

Про выборку ресурсов и pdoTools

При работе со сниппетами пакета pdoTools для выборки ресурсов, такими как pdoResources и pdoMenu, данные сниппеты ничего не знают о компоненте multiLingual, поэтому по-умолчанию, независимо от языковой версии, они будут получать из БД поля ресурсов со значениями на языке по-умолчанию.

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

pdoFetch.class = mlFetch
pdofetch_class_path = {core_path}.'components/multilingual/model/multilingual/'

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

Более подробное описание механизма описано в разделе Принцип перевода выборок

Принцип работы с компонентом

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


Предыдущий документ
Принцип перевода выборок
Следующий раздел
Интерфейсы