自定义 cron 作业未在 Wordpress 中安排

时间:2021-03-04 22:15:05

标签: wordpress cron

我在这里和从 Google 搜索结果中读到了几个问题,但我无法让它发挥作用。我有一个函数,我想每天运行一次,该函数将从外部源获取数据并将其存储在选项页面上。

add_action( 'wp', 'update_stock_market' );
add_action( 'get_stock_market_daily_data', 'get_stock_market_data', 1, 1 );

function update_stock_market() {
    if ( ! wp_next_scheduled( 'get_stock_market_daily_data' ) ) {
        wp_schedule_event( time(), 'daily', 'get_stock_market_daily_data', array($company) );
    }
}

function get_stock_market_data($company ) {
    //do something here to get $data;
    update_option( 'stock_market_data', $data); 
}

然而,无论发生什么,我都无法在wp-options的{​​{1}}下的option-name表中找到调度的cron

1 个答案:

答案 0 :(得分:1)

这段代码在一个干净的 WordPress 实例上对我有用,而不是直接在数据库中查看您是否尝试过使用插件 WP Crontrol?或者,在启用调试的情况下,尝试向 update_stock_market 函数添加日志条目以检查是否正在调用 sechudled 事件。

add_action( 'wp', 'update_stock_market' );
add_action( 'get_stock_market_daily_data', 'get_stock_market_data', 1, 1 );

function update_stock_market() {
    error_log( 'triggered' );
    if ( ! wp_next_scheduled( 'get_stock_market_daily_data' ) ) {
        wp_schedule_event( time(), 'daily', 'get_stock_market_daily_data', array($company) );
    }
}

function get_stock_market_data($company ) {
    //do something here to get $data;
    update_option( 'stock_market_data', $data); 
}