<?php
$contexts = $modx->getCollection('modContext', array('key:NOT IN' => array('web', 'mgr')));
foreach ($contexts as $context) {
$listContext .= "<li>" . $context->get('key') . "</li>";
}
return $listContext;$context = $modx->getObject('modContext','web');
$settings = $context->getMany('ContextSetting');
foreach ($settings as $setting) {
echo 'Setting name: '.$setting->get('key').' <br />';
echo 'Setting value: '.$setting->get('value').' <br />';
}$contexts = array(
'context1',
'context2',
'context3',
);
foreach ($contexts as $context) {
$settings = $modx->getcollection('modContextSetting',
array(
'context_key' => $ctx,
)
);
echo '____________________________________<br />';
echo 'Context: ' . $context->get('key') . '<br />';
foreach ($settings as $setting) {
echo ' Setting name: ' . $setting->get('key') . '<br />';
echo ' Setting value: ' . $setting->get('value') . '<br />';
}
}<?php
$contexts = array();
/** @var modContext $contextsGraph */
$query = $modx->newQuery('modContext');
$query->where(array('modContext.key:NOT IN' => array('web', 'mgr', 'backup')));
$query->sortby($modx->escape('modContext') . '.' . $modx->escape('key'), 'ASC');
$contextsGraph = $modx->getCollectionGraph('modContext', '{"ContextSettings":{}}', $query);
foreach ($contextsGraph as $context) {
$contextSettings = array();
foreach ($context->ContextSettings as $cSetting) {
$contextSettings[$cSetting->get('key')] = $cSetting->get('value');
}
foreach ($contextSettings as $key => &$value) {
$matches = array();
if (preg_match_all('/{(.+)?}/', $value, $matches)) {
foreach ($matches[1] as $settingKey) $value = str_replace('{' . $settingKey .'}', $modx->getOption($settingKey), $value);
}
}
$contexts[$context->get('key')] = $contextSettings;
}
<li><a href="(site start value)">Some context</a></li>
<li><a href="[[~[[getContextSetting? &context=`someContext` $setting=`site_start`]]]]">Some context</a></li>
[[getContextSetting? &context=`myContext`, $setting=`site_start`]]