我在这里和从 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
答案 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);
}