Как создать ресурс процессором $modx->runProcessor('resource/create', $props)

Создаем ресурс в MODX через процессор $modx->runProcessor('resource/create', $props)

В сети много примеров того как использовать процессор resource/create, но я не сразу нашел каким образом можно создать ресурс с дополнительными TV-полями. Оказалось все просто!

$newResProps = array(
    'createdby' => $modx->user->get('id'),
    'parent' => 55,
    'template' => 12,
    'isfolder' => 0,
    'deleted' => 0,
    'published' => 1,
    'pagetitle' => $pagetitle,
    'alias' => $alias,
    'tv28' => $material_id_value, // Это ТВ-параметр. Подробнее читай ниже 
    'tv29' => $material_price_value,
    'tv26' => $phone_value,
    'tv27' => $email_value
    );
$response = $modx->runProcessor('resource/create', $newResProps);

if ($response->isError()) { // Проверка на ошибки
    return $modx->error->failure($response->getMessage());
}
$newId = $response->response['object']['id'];
$modx->cacheManager->clearCache(); // Очистка кэша (а может она тут и не нужна, хм...)

Подробнее о дополнительных TV-полях при создании ресурса через resource/create

В примере выше есть элементы массива с ключами tv28, tv29, tv26, tv27. Это и есть запись TV-полей. Число — это id TV-поля (находится в скобках в админке рядом с названием TV-поля)

Полезная ссылка.

Комментарии (0)

  1. Напишите первый комментарий
*Комментарий будет опубликован после проверки модератором

Похожие статьи

Наш сайт использует куки, нажмите «ОК» если вы не против
OK