System Cron job not firing

时间:2017-10-03 作者:wplearner

我是WordPress开发的新手,第一次使用cron job。我对cron job有意见,它没有被解雇。以下是我为实现这一目标所采取的所有步骤。我已将这一行放在我的wp配置文件中

define(\'DISABLE_WP_CRON\', true);
然后,我用这个命令在cpanel中设置了一个cron作业。

wget -q -O - http://mywebsite.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1
我每30分钟选择一次间隔。

但现在cron job没有启动我的WordPress功能。这是我在函数中使用的代码。我的主题的php。

wp_schedule_event(time(), \'hourly\', \'my_hourly_event\'); 
add_action(\'my_hourly_event\', \'do_this_hourly\');
function do_this_hourly() {
wp_mail( \'[email protected]\', \'Automatic email\', \'Automatic scheduled email from WordPress to test cron\');
}
有谁能告诉我我在这方面做错了什么,因为我没有收到来自此功能的电子邮件。我将非常感谢你的帮助<谢谢你!

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

您需要首先创建30分钟的间隔。使用筛选器:

add_filter(\'cron_schedules\',\'my_cron_schedules\', 999 );
function my_cron_schedules($schedules) {
    $schedules[\'thirty_min\'] = array(
        \'interval\' => 1800, // Every 30 mins
        \'display\'  => __( \'Every 30 mins\' ),
    );
    return $schedules;
}
然后需要执行计划作业:

wp_schedule_event( time(), \'thirty_min\', \'your_event_hook\' );
然后添加操作和回调函数:

add_action(\'your_event_hook\', \'do_this_hourly\');
function do_this_hourly() {
    wp_mail( \'[email protected]\', \'Automatic email\', \'Automatic scheduled email from WordPress to test cron\');
}
你需要define(\'DISABLE_WP_CRON\', true); 在wp配置中。php

然后可以安排系统cron。

结束

相关推荐

从cron执行更新所有插件和核心的WP-CLI命令失败

我有以下WP-CLI命令来更新所有插件和核心。从cron执行时,它似乎失败了(其他cron命令工作):0 0 * * 0 for dir in /var/www/html/*/; do cd \"$dir\" && wp plugin update --all --allow-root; wp core update --allow-root; done 我尝试手动运行它(在一段时间没有更新后从GUI手动更新后,我这样做了),我得到了所有站点的以下信息:Success: Plug