Щукин Дмитрий

Щукин Дмитрий

Был в сети 04 мая 2023, 13:57
Заказы не принимаю
Массовое создание запланированных ресурсов в блоге по датам
<?php
// две даты
$Date1 = '07.04.2022';
$Date2 = '31.12.2022';

// пустой массив
$array = array();

// Функция strtotime
$Variable1 = strtotime($Date1);
$Variable2 = strtotime($Date2);

// цикл для дат в массиве
// 86400 сек = 24 часа = 60*60*24 = 1 день
// 9:00 время публикации топика
for ($currentDate = $Variable1; $currentDate <= $Variable2;$currentDate += (86400)) {
    $Store = date('d.m.Y 09:00:00', $currentDate);
    $array[] = $Store;
}

foreach ($array as $dmy9) {

    $date = new DateTime($dmy9);
    $date = $date->getTimestamp();
    $pagetitle = substr($dmy9, 0, strpos($dmy9, " "));
    $pagetitle = ltrim($pagetitle,'0');
    $pub_date = date("Y-m-d H:i:s", $date);

    $response = $modx->runProcessor('resource/create', array(
        'template' => 1,
        'isfolder' => 0,
        'published' => 0,
        'pub_date' => $pub_date,
        'parent' => 44, // id родителя
        'pagetitle' => $pagetitle,
        'alias' => $pagetitle . "/", // Обязательно слэш на конце, иначе может приводить к ошибкам в массовом импорте
        'class_key' => 'modDocument',
    ));
    if ($response->isError()) {
        $modx->log(xPDO::LOG_LEVEL_ERROR, 'Возникла проблемма с созданием ресурса...');
        $modx->log(modX::LOG_LEVEL_ERROR, $response->getMessage());
        return;
    }
    else {
        print('<pre>');
        print_r($response->response);
        print('</pre>');
    }
}
//очистку кеша выносим из цикла
$modx->cacheManager->clearCache();