使用cron计划同一操作的多个实例

时间:2019-12-06 作者:Jussi

我在wordpress中设置了一个简单的cron作业:

add_action( \'event_hook\', \'do_this_function\');
wp_schedule_single_event( time() + 300, \'event_hook\', array(\'testvariable\') );
我使用函数do\\u this\\u function()在用户完成某件事两周后向其发送电子邮件。

然而,我现在意识到“event\\u hook”只能同时在cron作业队列中出现一次!我需要同时运行多个两周倒计时。我对如何做到这一点有点茫然。

这种限制的解决方法是什么?我唯一想到的是:

1计划“event\\u hook”每天运行一次左右。

2调用一个函数,该函数将查看“event\\u hook”cron作业的参数。我会将用户电子邮件、必须发送电子邮件的时间和其他信息放入多维数组中

3迭代多维数组,如果两周过去了,发送电子邮件,然后从cron作业数组中删除相同的信息

4当用户在两周内触发电子邮件需求时,使用单独的功能将新用户的新信息添加到cron作业数组中。

这样行吗?

1 个回复
SO网友:Jussi

呃,我真的养成了回答自己问题的习惯。

事实证明,您可以在WP cron中为同一个挂钩排队多个Instance。WP cron用于分隔实例的数据是参数。它们不能相同,或者WP拒绝创建新的cron作业。

相关推荐

从wp-cron切换到服务器cron作业

我正在创建一个wordpress插件,用于交易加密货币。这是一个机器人,我需要每10秒检查一次货币值。为了做到这一点,我需要通过cron作业运行PHP脚本。我曾尝试使用wordpress cron作业,但它们在执行时间方面并不可靠。我想问:有没有办法在使用CPanel的服务器上每隔10秒执行一次cron作业?我试过在CPanel上使用cronjob,但它们的粒度只有一分钟,还不够提前谢谢