Я использую silverstripe 3.1 Я хотел бы ограничить языки (только на немецкий и английский), которые доступны в раскрывающемся списке CMS. Поэтому я ставлю следующий код в моем MySite/_config.phpОграниченные языки в cms
i18n::set_locale('de_DE');
$allowed_locales = array(
'de_DE' => array('Deutsch', 'Deutsch'),
'en_EN' => array('English', 'English')
);
i18n::$common_locales = $allowed_locales;
Afer флеша = 1 я получаю следующее сообщение об ошибке: Фатальная ошибка: Не удается получить доступ к частной собственности i18n :: $ common_locales в ... _config .php
Любые идеи, что пошло не так? Спасибо
Когда я использую Translateable, это означает, что я должен использовать переводимый модуль из silverstripe .. Изменяя язык текущего пользователя в cms, который я использую: Config :: inst() -> update ('i18n', 'common_locales', $ allowed_locales); Никаких изменений, если я поместил это в _config.php после flush = 1 .. Может быть, мой массив выше: $ allowed_locales ошибочен? – Steve
А я вижу, я предположил, что вы используете Терминал, не думали о поле. И я пропустил важный вопрос с обновлением конфигурации, если вы хотите его перезаписать, вам нужно сначала удалить существующие. Я обновлю ответ – Zauberfisch
К сожалению, это не работает для меня, если я вызываю функцию remove() перед функцией update(). Любые идеи, что может быть неправильным? Спасибо – Steve