MODX REVO как через API обновить tv поле у всех ресурсов одним запросом?

Приветствую, прямо скажу даже не знаю с какого бока подойти.
Есть 1000 ресурсов, у них есть content и я хочу первый абзац контента, записать в tv с именем title.

Первый абзац до точки, получить не проблема, $tvtitle = explode( ".", $content);
но как записать в tv и главное обновить все ресурсы махом, не понимаю :(

Куда копать? Я так понимаю в цикле нужно через сниппет? Или какой то SQL запрос через phpMyadmin это делать?
Роман
16 февраля 2021, 14:20
modx.pro
88
0

Комментарии: 2

Наумов Алексей
16 февраля 2021, 14:46
2
+2
1. Ставите компонент Console
2. Пишите там код:
$q = $modx->newQuery('modResource');
// условие по необходимости
//$q->where(array('parent' => 1));
$resources = $modx->getIterator('modResource', $q);
foreach($resources as $resource) {
    $content = $resource->get('content');
    // делаем че хотим
    $title = 'Заголовок';
    // ...

    $resource->setTVValue('title', $title);
    $resource->save();
}
3. Запускаете… ждете (возможно долго).
    Роман
    16 февраля 2021, 14:57
    0
    Благодарю! Консоль, точно, как то работал с этим компонентом.
    Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
    2