переключение контекста.
Доброго времени суток. Продолжаю войну с переводами, предыдущую заметку решил оставить, так как по сути решение нашел, но оно не работает, а именно не переключаются контексты.
Что я имею:
Контекст по умолчанию web
— cultureKey — ru
— site_start — 1
— error_page — 1
Создал новый контекст en
— cultureKey — en
— site_start — 197
— error_page — 197
Далее, я уже даже прибегнул к тому, что в плагине на событие OnHandleRequest прописал принудительное
Я что то упустил? Контексты как то иначе переключаются? Буду крайне благодарен любой информации… 4е сутки веду войну…
Что я имею:
Контекст по умолчанию web
— cultureKey — ru
— site_start — 1
— error_page — 1
Создал новый контекст en
— cultureKey — en
— site_start — 197
— error_page — 197
Далее, я уже даже прибегнул к тому, что в плагине на событие OnHandleRequest прописал принудительное
$_SESSION['lang'] = 'en';
$modx->switchContext('en');
$modx->setOption('cultureKey', 'en');В теории при любой передаче параметра должен же переключиться контекст? Но у меня ничего не происходит… Вообще…Я что то упустил? Контексты как то иначе переключаются? Буду крайне благодарен любой информации… 4е сутки веду войну…
Техническая поддержка MODX
Сайт лежит, тормозит или остался без разработчика?
Переезд с MODX 2 на 3, PHP 7 на 8, скорость и безопасность. Поддержка со сроками и ответственностью, а не совет в чате.
Подробнее
Реклама
Комментарии: 14
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Просто в контекстах создавать нужные настройки.
[[BabelLinks]]
не выводит ничего, хотя сниппет установлен, контексты созданы, и прописаны…Или уже очень поздно, и я плохо вижу, или в заметке на самом деле нету ничего касаемо копирования файлов…
На
То $modx->switchContext('web'); и $modx->switchContext('en'); работает!
Если же в index.php останется web то в плагине смена контекста не работает…
ps
В office переводится все ок, на разных страницах разный язык, а вот ms2 как был русский так и остается…
Замени yoursite.ru на свой. Должно заработать.
В этих блоках мне надо указать en,ru?
.httpaccess вообще не причем. MODX сам рулит.
Документация Babel на русском
MODx REVO multilanguage Мультиязычность + Babel (способ настройки без изменения .htacces)
Пример плагина: Switchlang
системное событие: OnHandleRequest
Статья немного битая, но в целом всё понятно, понятно что не должно быть в config.core.php и вообще его не нужно открывать)
В зависимости от кол-ва требуемых языков, создаются папки, в моём случае это "en" и "es" т.е. английский и испанский (хочу заметить, что web — это русский язык).
Всё отлично работает, также и с пакетом Article (дополнение для новостных сайтов, добавляет новую возможность "Создать->Создать Статьи здесь" и уже внутри создавать дочерние документы и с интерфейсом управления).
NEW CONTEXT ROUTING PLUGIN FOR MODX
chsmedien.com/blog/2014/01/new-context-routing-plugin-for-modx
(modx.com/extras/package/xrouting
Само переключение контекстов прекрасно работает, вот ссылка на активный не выводится. Стандартный вызов: [[BabelLinks]]