以编程方式创建Magento Cron工作任务

Mil*_*los 5 cron magento

我想以编程方式创建cron作业任务,而不使用config.xml文件。可能吗?

Mil*_*los 5

我在以下位置找到了解决方案:http : //www.ayasoftware.com/how-create-cron-jobs-dynamically-magento

$timecreated   = strftime("%Y-%m-%d %H:%M:%S",  mktime(date("H"), date("i"), date("s"), date("m"), date("d"), date("Y")));
$timescheduled = strftime("%Y-%m-%d %H:%M:%S", mktime(date("H"), date("i")+ 5, date("s"), date("m"), date("d"), date("Y")));
$jobCode = 'job_id';

try {
    $schedule = Mage::getModel('cron/schedule');
     $schedule->setJobCode($jobCode)
        ->setCreatedAt($timecreated)
        ->setScheduledAt($timescheduled)
        ->setStatus(Mage_Cron_Model_Schedule::STATUS_PENDING)
        ->save();
   } catch (Exception $e) {
     throw new Exception(Mage::helper('cron')->__('Unable to save Cron expression'));
   }
Run Code Online (Sandbox Code Playgroud)


Chr*_*euf 2

我不明白这样做的目的是什么,可能有更好的方法,但我认为应该这样做

我从来没有遇到过这种情况,但您可能可以使用 Mage_Cron_Model_Schedule 类Mage::getModel('cron/schedule')并相应地设置数据,然后保存。无论如何,您需要在 config.xml 中定义 cron 任务,以便 magento 能够关联。

它应该填充表 cron_schedule 来检查要运行的 cron 任务。