wp_schedule_event没有执行我的功能

时间:2016-04-20 12:29:00

标签: php wordpress cron

我在wp-config.php文件中禁用了WP cron,并在我的服务器上设置了一个cron作业,在http://www.domain.com/wp-cron.php?doing_wp_cron

每小时的顶部运行

我的functions.php文件中有以下代码,但是当裁剪作业在每小时的顶部运行时,我从未收到电子邮件。

我检查了数据库并确认作业位于" cron"

下的wp_options表中

我无法弄清楚我做错了什么导致电子邮件无法触发。

// Scheduled Action Hook
    function menu_update_reminder( ) {
        mail('myemail@address.com', 'Cron ran successfully', 'Cron ran successfully');
}

// Schedule Cron Job Event
function menu_update_cron() {
    if ( ! wp_next_scheduled( 'menu_update_reminder' ) ) {
        wp_schedule_event( current_time( 'timestamp' ), 'hourly', 'menu_update_reminder' );
    }
}
add_action( 'wp', 'menu_update_cron' );

1 个答案:

答案 0 :(得分:0)

我最终没有代码中最有用的部分。执行cron作业后,add_action实际运行函数中的代码。

menu_update_reminder功能已重命名为menu_update_reminder_run

// Scheduled Action Hook
function menu_update_reminder_run( ) {
    mail('myemail@address.com', 'Cron ran successfully', 'Cron ran successfully');
}
add_action( 'menu_update_reminder' , 'menu_update_reminder_run' );

// Schedule Cron Job Event
function menu_update_cron() {
if ( ! wp_next_scheduled( 'menu_update_reminder' ) ) {
    wp_schedule_event( current_time( 'timestamp' ), 'hourly', 'menu_update_reminder' );
    }
}
add_action( 'wp', 'menu_update_cron' );