Jump to main content Jump to doc navigation

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

Вы можете легко создать контекст через меню "Контексты". Контекст появится в вашем дереве ресурсов. Ресурсы можно легко перемещать из одного контекста в другой перетаскиванием.

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

Создание контекста

Сначала перейдите на страницу "Контексты" через "Система" -> "Контексты". Затем нажмите "Создать новый". Форма попросит ввести ключ и описание. Далее нажмите правой кнопкой мыши по созданному контексту и выберите "Обновить контекст".

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

Обратите внимание, что новые контексты не получают автоматически разрешение "load" для анонимных пользователей в версии 2.2+ - вам нужно добавить это вручную.

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

Настройки контекста

Вы можете создать настройки для любого определенного контекста, нажав Система -> Контексты, затем нажмите правой кнопкой мыши любой контекст и выберите "Обновить контекст".

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

Системные настройки -> Настройка контекста -> Настройка пользователя

Доступ к контексту

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

Контроль доступа -> Изменить нужную группу пользователей -> Права доступа -> Доступ к контексту

Получение настроек контекста

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

В шаблоне или чанке:

[[++my_context_setting]]

Программно в сниппете:

$setting = $modx->getOption('my_context_setting');

Смотрите также

  1. Создание поддомена из папки с использованием виртуальных хостов
  2. Использование одного шлюза для управления несколькими доменами