在wordpress中每天运行一段代码

时间:2013-09-29 11:00:33

标签: wordpress user-registration

我正在使用wordpress注册插件。我坚持用户到期。实际上,我希望在注册一年后让会员到期。我希望在到期前1个月通过电子邮件通知他们。我正在使用 add_action('init','我的函数名')来检查一个月后有多少用户过期以及发送邮件。 bt每次用户访问网站时都会运行此操作挂钩,这将使我的网站每次用户访问时加载速度太慢。所以我想要一些dat将使这段代码在一天内运行一次。例如当第一个用户访问该站点时,此代码将运行,并且在整个剩余的一天中,无论有多少用户访问该网站,都不会调用此代码。

1 个答案:

答案 0 :(得分:1)

Wordpress有一个内置的功能/ API,可以完全按照你的意愿行事 - 每天/每小时/你指定的任何时间间隔做一些事情。

http://codex.wordpress.org/Function_Reference/wp_schedule_event

从上面的页面中无耻地采取

add_action( 'wp', 'prefix_setup_schedule' );
/**
 * On an early action hook, check if the hook is scheduled - if not, schedule it.
 */
function prefix_setup_schedule() {
    if ( ! wp_next_scheduled( 'prefix_daily_event' ) ) {
        wp_schedule_event( time(), 'daily', 'prefix_daily_event');
    }
}


add_action( 'prefix_daily_event', 'prefix_do_this_daily' );
/**
 * On the scheduled action hook, run a function.
 */
function prefix_do_this_daily() {
    // check every user and see if their account is expiring, if yes, send your email.
}

prefix_可能是为了确保不会与其他插件发生冲突,因此我建议您将其更改为独特的插件。

如果您想了解更多信息,请参阅http://wp.tutsplus.com/articles/insights-into-wp-cron-an-introduction-to-scheduling-tasks-in-wordpress/