wp_schedule_event无效

时间:2015-08-21 05:18:29

标签: php wordpress scheduled-tasks

我正在制作一个程序,使用wp_schedule_event在一小时内检查并发送电子邮件,但它不会在我的结束工作..是否有人对我的案例有所了解?这是我的代码,我把它放在我的自定义插件myplugin-function.php

register_activation_hook(__FILE__, 'my_activation');
add_action('my_hourly_event', 'do_this_hourly');

function my_activation() {
    wp_schedule_event(time(), 'hourly', 'my_hourly_event');
}

function do_this_hourly() {
    $headers = "From: webmaster <webmaster@test.com>\r\n";

    $headers .= "MIME-Version: 1.0\r\n";
    $headers .= "Content-Type: text/html; charset=ISO-8859-1\r\n";
    mail('mymail@test.com','Test','Hello',$headers);

}

register_deactivation_hook(__FILE__, 'my_deactivation');

function my_deactivation() {
    wp_clear_scheduled_hook('my_hourly_event');
}

1 个答案:

答案 0 :(得分:0)

由于您的代码似乎是从WP文档中删除的,我认为这更像是配置问题,而不是代码问题。

也许这些步骤可以帮助您:

  1. 检查WP_DEBUG文件中的wp-config.php是否设为true

  2. 检查DISABLE_WP_CRON文件中是否存在true,或至少未将其设为wp-config.php

  3. 尝试检查您的活动是否已安排$schedule = wp_get_schedule( 'my_hourly_event' );,并转储schedule

  4. 如果您可以访问服务器日志,请查看wp_cron.php文件是否有错误

  5. 看看ALTERNATE_WP_CRON选项文档,它可能对您有帮助,但我不太喜欢这个解决方案

  6. 我知道我没有给你任何答案,但我们没有很多信息(因为你没有)。

    希望它会帮助你。