与为特定时间(例如“每小时整点过五分钟”)安排任务的传统系统 cron 不同,WP-Cron 使用间隔来模拟系统 cron。

WP-Cron 接收两个参数:第一个任务的时间,以及任务应重复执行的间隔(以秒为单位)。例如,如果您将任务安排在下午 2:00 开始,间隔为 300 秒(五分钟),则该任务将在下午 2:00 首次运行,然后在下午 2:05 再次运行,接着在下午 2:10 再次运行,依此类推,每五分钟执行一次。

为了简化任务调度,WordPress 提供了一些默认间隔和一种添加自定义间隔的简便方法。

WordPress 提供的默认间隔如下:

  • hourly
  • twicedaily
  • daily
  • weekly (since WP 5.4)

自定义间隔

要添加自定义间隔,您可以创建一个过滤器,例如:

add_filter( 'cron_schedules', 'example_add_cron_interval' );
function example_add_cron_interval( $schedules ) { 
    $schedules['five_seconds'] = array(
        'interval' => 5,
        'display'  => esc_html__( 'Every Five Seconds' ), );
    return $schedules;
}

此过滤器函数创建了一个新的间隔,允许我们每五秒运行一次 cron 任务。

注意:所有时间间隔均以秒为单位。