本文整理汇总了PHP中BackWPup_Job::start_wp_cron方法的典型用法代码示例。如果您正苦于以下问题:PHP BackWPup_Job::start_wp_cron方法的具体用法?PHP BackWPup_Job::start_wp_cron怎么用?PHP BackWPup_Job::start_wp_cron使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类BackWPup_Job
的用法示例。
在下文中一共展示了BackWPup_Job::start_wp_cron方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: run
/**
* @static
*
* @param $arg
* @internal param $args
*/
public static function run($arg)
{
$job_object = BackWPup_Job::get_working_data();
if ($arg == 'restart' && !empty($job_object)) {
//reschedule restart
wp_schedule_single_event(time() + 60, 'backwpup_cron', array('id' => 'restart'));
//restart job if not working or a restart imitated
$not_worked_time = microtime(TRUE) - $job_object->timestamp_last_update;
if (empty($job_object->pid) || $not_worked_time > 300) {
BackWPup_Job::start_wp_cron();
}
return;
}
if (empty($arg) || $arg == 'restart') {
return;
}
//check that job exits
$jobids = BackWPup_Option::get_job_ids('activetype', 'wpcron');
if (!in_array($arg, $jobids)) {
return;
}
//delay other job start for 5 minutes if already one is running
if (!empty($job_object)) {
wp_schedule_single_event(time() + 300, 'backwpup_cron', array('id' => $arg));
return;
}
//reschedule next job run
$cron_next = self::cron_next(BackWPup_Option::get($arg, 'cron'));
wp_schedule_single_event($cron_next, 'backwpup_cron', array('id' => $arg));
//start job
BackWPup_Job::start_wp_cron($arg);
}