Базовые функции из Modx Revo API
апрель
27
, 2015
Рассмотрим базовые функции применения API Modx Revo, такие как получение документа, поля документа, дополнительного параметра, вызов сниппетов и чанков.
Подключаем Modx API.
Пример взят из этой статьи
define('MODX_API_MODE', true);
require_once($_SERVER['DOCUMENT_ROOT'].'/index.php');
$modx = new modX();
$modx->initialize('web');
Получаем коллекцию документов
$docs = $modx->getCollection('modResource', array('parent' => 3));
// Перебираем документы
foreach ($docs as $doc) {
echo $doc->id.' - '.$doc->pagetitle;
}
Еще один способ получения коллекции.
Он "шире" первого и позволяет задавать дополнительные условия,
например, сортировку
$q = $modx->newQuery('modResource');
$q->where(array(
'parent' => 5
));
$q->sortby('menuindex', 'asc');
$docs = $modx->getCollection('modResource', $q);
Получаем документ
$doc = $modx->getObject('modResource', 14);
// Или так
$doc = $modx->getObject('modResource', array('alias' => 'our-alias'));
Получаем поля документа
echo $doc->pagetitle.' - '.$doc->content;
Работаем с tv-параметрами
$tags = $doc->getTVValue('tags');
echo $tags;
$tags = 'Modx, Modx API, бекэнд';
$doc->setTVValue('tags', $tags);
Примечание
При создании нового ресурса, если мы назначаем ему TV-параметр,
то нужно вызвать метод save() после каждого задания параметра.
В противном случае есть вариант, что дополнительный параметр не сохранится.
Вызываем сниппет с параметрами
$res = $modx->runSnippet('print_word', array('word' => 'test'));
echo $res;
Получаем и выводим содержимое чанка
$chunk = $modx->getChunk('item_post');
echo $chunk;
Заходите в группу в контакте -
https://vk.com/webdevkin
Анонсы статей, обсуждения интернет-магазинов, vue, фронтенда, php, гита.
Истории из жизни айти и обсуждение кода.
Истории из жизни айти и обсуждение кода.