如何在此场景中设置WP Cron

时间:2012-08-13 作者:Ken

我想使用Wordpress内置的WP Cron每天更新汇率。

我目前使用此功能,

require_once(WP_PLUGIN_DIR . \'/autocurupdate/currencyexchange_class.php\');
$cx=new currencyExchange();
$cx->getData();
$currency_sql = "select last_updated from " . $wpdb->prefix."currencies where code = \'PHP\'";
$currency_1 = mysql_query($currency_sql);
$currency_2 = mysql_fetch_array($currency_1);
$last_updated = mysql2date(get_option(\'date_format\'), $currency_2[\'last_updated\']);
$current_date = $cx->Date;
$currentdate = mysql2date(get_option(\'date_format\'), $current_date);
if($last_updated !== $currentdate) {
update_currency();
}
我如何跑步update_currency() 每天使用WP Cron?

2 个回复
SO网友:kaiser

第一件事:打招呼!到$wpdb

Thewpdb Class 是您在最基本的级别上与数据库进行交互的方式。忘掉那些吧mysql_* 功能,当涉及到WordPress时。核心有一个很好的包装器,可以让大多数事情对您来说都非常安全(提示:SQL注入和其他坏东西)。或者至少提供一些你可以用来确保安全的东西(like_escape(), $wpdb->prepare() 提到一些)。

WordPress的调度API带有某种伪Cron作业:

  • Schedule API 这并没有很好的文档记录,但这是最接近Cron作业的。请确保您阅读了有关它的所有内容,并在干净的安装中进行了尝试»WP Cron Jobs List« 并托管在GitHub/Gist上或通过own WPSE Plugin repository.

    enter image description here

SO网友:Vikas Bhardwaj

这就是cron的工作原理

add_action(\'my_daily_event\', \'update_currency\');
add_action(\'wp\', \'my_activation\');

function my_activation() {
if ( !wp_next_scheduled( \'my_daily_event\' ) ) {
    wp_schedule_event( time(), \'daily\', \'my_daily_event\');
}
}
这应该行得通。但是wordpress cron在有人访问您的站点并且计划的时间已经过去时工作。

结束

相关推荐

WP-cron.php-如何删除WP的Cron瞬变?

我有一个Wordpress网络,我的任务是禁用WP Cron并将其替换为Apache Cron。我已经设置了一个PHP脚本,当Apache Cron调用该脚本时,它将在网络下的所有站点中循环,并向该站点的wp Cron发出请求。php页面,从而执行其cron。我想使用Wordpress的瞬态特性来限制我的PHP脚本,因为Wordpress限制了自己的cron。然而,当我深入研究代码时,我看到doing\\u cron瞬态已设置(在cron.php#217中),但从未取消设置。瞬态是否一直未设置,或者Wor