Action Scheduler not running

时间:2020-06-05 作者:Dragos Micu

我正在尝试学习如何使用动作调度器,所以我希望能给我一些好的指导。我有以下代码:

<?php
add_action( \'init\', array( $this, \'wootomation_schedule\' ) );
add_action( \'wootomation_import\', array( $this, \'wootomation_do_action\' ) );

function wootomation_schedule() {
    // if ( false === as_next_scheduled_action( \'wootomation_import\' ) ) {
    //  as_schedule_recurring_action( time(), 30, \'wootomation_import\' );
    // }
    if ( false === as_next_scheduled_action( \'wootomation_import\' ) ) {
        as_enqueue_async_action( \'wootomation_import\' );
    }
}

function wootomation_do_action() {
    var_dump(\'test\');
    wp_mail( \'[email protected]\', \'test AS\', \'Action schedule completed\' );
}
它似乎创建了操作,但从未运行。我尝试刷新网站的前端,但没有帮助。

enter image description here

有人能告诉我如何让它运行吗?

第二个问题是,这是否是分解一些繁重索引的正确方法,可能是使用参数,例如页面:“0-100”,页面:“101-200”,等等。

谢谢Dragos

1 个回复
SO网友:raftaar1191
require_once( plugin_dir_path( __FILE__ ) . \'/libraries/action-scheduler/action-scheduler.php\' );

/**
 * Schedule an action with the hook \'eg_midnight_log\' to run at midnight each day
 * so that our callback is run then.
 */
function eg_log_action_data() {
    if ( false === as_next_scheduled_action( \'eg_midnight_log\' ) ) {
        as_schedule_recurring_action( strtotime( \'midnight tonight\' ), DAY_IN_SECONDS, \'eg_midnight_log\' );
    }
}
add_action( \'init\', \'eg_log_action_data\' );

/**
 * A callback to run when the \'eg_midnight_log\' scheduled action is run.
 */
function eg_log_action_data() {
    error_log( \'It is just after midnight on \' . date( \'Y-m-d\' ) );
}
add_action( \'eg_midnight_log\', \'eg_log_action_data\' );

Docs Link: https://actionscheduler.org/usage/#scheduling-an-action

相关推荐

如何确保WP-Cron工作循环通过所有帖子?

我正在使用WP Crontrol,每天运行一些CRON作业来检查帖子的年龄。如果帖子提前2天发布,则会被删除。这是可行的,但由于某种原因,只有三天以上的帖子被删除了。还有一些仍在出版中。这一定是因为网站上大约有3000个帖子。有没有办法让我的CRON工作更有效率?以下是我运行的当前代码:class EventsWPCron { public function __construct() { if ( ! wp_next_scheduled( \'