WP_Schedule_Event自定义事件时间

时间:2021-02-24 作者:uPrompt

好的,假设我想让用户能够每X分钟安排一次wp cron事件。现在,假设我希望X在10到525600之间(一年中的分钟数)。

我看到的是通过$schedules数组处理cron事件的一种非常愚蠢的方法。如果我理解正确,我必须为最终用户想要的每一个不同的事件时间向数组中添加一个自定义时间表。例如:

add_filter( \'cron_schedules\', function ( $schedules ) {
$schedules[\'twelve_minutes\'] = array(
   \'interval\' => 12,
   \'display\' => __( \'Twelve Minutes\' )
);
return $schedules;
} );
请告诉我有什么方法可以使用自定义时间安排活动,而无需向$schedules数组中添加525590个唯一间隔。

1 个回复
最合适的回答,由SO网友:Coder At Heart 整理而成

我使用以下代码来运行任务。这不需要添加cron计划。

function setup_my_action() { 
  if (!wp_next_scheduled(\'my_action\')) {
     wp_schedule_single_event(time()+3600, \'my_action\');
  }
}
function my_action() { 
  // do something
}
add_action(\'init\',\'setup_my_action\');
add_action(\'my_action\', \'my_action\');

相关推荐