getChunk

getChunk - подменяет параметры в чанке. Помимо этого в чанке так же обработаются вызванные сниппеты.
ВАЖНО - если вы не используете вызовы других сниппетов в обрабатываемом чанке, то лучше использовать метод parseChunk, это сэкономит ресурсы потому что parseChunk не обрабатывает вложенные сниппеты.

Пример использования:

Создаем чанк "WelcomeChunk" с содержимым:

    Привет [[+name]]!

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

    <?php
    $output = $modx->getChunk('WelcomeChunk',array(
        'name' => 'Петя',
    ));
    return $output;

Каждый ключ переданный в ассоциативном массиве будет обработан методом и в результате мы получим

    Привет Петя!

Описание метода:

string getChunk (string $chunkName, [array $properties = array ()])

$chunkName - название чанка
$properties - обычный ассоциативный массив который будет обработан в качестве заполнителя для чанка.

    <?php
    $properties = array('key' => 'value');
Так же ассоциативный массив $properties может быть многомерным:
    <?php
    $properties = array(
    'user' => array('id' => 1),
    'document' => array('id' => 27)
    );
    // or:
    $properties['user']['id'] = 1;
    $properties['document']['id'] = 27;

В случае с ассоциативным массивом мы сможем получить данные с помощью следующих ключей [[+user.id]] и [[+document.id]].

Парсим строку:

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

    <?php
    $tpl = 'Привет мое имя [[+name]]';
 
    // Свойства
    $props = array('name' => 'Павел');
     
    // Создаем чанк налету
    $uniqid = uniqid();
    $chunk = $modx->newObject('modChunk', array('name' => "{tmp}-{$uniqid}"));
    $chunk->setCacheable(false);
     
    $output = $chunk->process($props, $tpl);
addEventListener - добавляет плагин в карту событий,…
checkForLocks - проверка блокировки элемента.
checkSession - проверка сессиии текущего юзера…
getAuthenticatedUser - получаем текущего, авторизованного…
getCacheManager - все виды кеша связанные с с xPDO…
getChildIds - получает все дочерние идентификаторы…
getChunk - обрабатывает и возвращает чанк…
getConfig - получаем настройки сайта
getContext - извлечение контекста без его…
getEventMap - получаем карту событий и плагинов…
getLoginUserID - извлечение контекста без его…
getLoginUserName - возвращает имя текущего пользователя…
getParser - возвращает экземпляр modParser…
getPlaceholder - получаем плейсхолдер по ключу.
getRegisteredClientScripts - возвращает все зарегистрированные…
getRegisteredClientStartupScripts - возвращает все зарегистрированные…
getRequest - пытаемся загрузить обработчик…
getResponse - пытаемся получить ответ обработчика…
getService - загружает и возвращает экземпляр…
getSessionState - возвращает состояние SESSION…
getTree - получаем дерево ресурсов.
getUser - получаем информацию о текущем…
getVersionData - получаем данные о версии ядра…
handleRequest - Инициализируем, чистим, и обработываем…
hasPermission - проверка политики дотупов для…
initialize - инициализируем текущий контекст,…
invokeEvent - вызывает указанное событие с…
lexicon - получаем обработанную запись…
makeUrl - cоздаем URL-адрес, представляющий…
parseChunk - разбираем чанк, используя ассоциативный…
regClientCSS - регистрируем файл CSS для тега…
regClientHTMLBlock - прописываем HTML, закачиваемый…
regClientScript - регистрируем JavaScript, который…
regClientStartupScript - прописываем JavaScript блок который…
removeAllEventListener - удаляем все зарегистрированные…
removeEventListener - удаляем событие из карты событий,…
runProcessor - загружает и запускает конкретный…
runSnippet - программно запускаем сниппет…
sendError - отправляем ошибку пользователю…
sendErrorPage - отправляем пользователя к виртуальной…
sendForward - пересылает запрос на другой ресурс,…
sendRedirect - посылает редирект на указанный…
setDebug - устанавливаем уровень отладки.
setPlaceholder - устанавливает значение заполнителя,…
setPlaceholders - задаем коллекцию заполнителей.
switchContext - переключатель первичного контекста…
toPlaceholder - рекурсивно проверяет и устанавливает…
toPlaceholders - наборы заполнители из значений,…
unsetPlaceholder - снимает значение заполнителя…
unsetPlaceholder - снимает значение заполнителя…
unsetPlaceholders - сбросываем несколько заполнителей.