【问题标题】:wp_schedule_event not executing my functionwp_schedule_event 没有执行我的功能
【发布时间】:2016-04-21 21:12:53
【问题描述】:

我在 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' );

【问题讨论】:

  • 可能是一个记录和发送电子邮件的想法,至少你知道它是邮件问题还是 cron 问题..
  • 你试过使用 wp_mail 吗?

标签: php wordpress cron


【解决方案1】:

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

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' );

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-08-12
    • 1970-01-01
    • 2023-02-17
    • 1970-01-01
    • 2013-09-08
    • 2022-01-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多