setting up a wp cron job

时间:2014-07-22 作者:Meschiany

我对wp cron的工作有点陌生。

我想我理解这个概念,但缺乏实施。我读了很多关于如何实现的教程,包括这篇文章:Run function at specific time但仍然无法确定哪里(在哪些文件中)是最佳做法。

上面的链接很好地描述了我的问题。我希望每天在特定的时间运行测试。php文件,该文件位于wordpress的根文件夹中(其中包含wp内容和include等)。

我很清楚wp-cron(无流量无cron)的缺点,我对此很满意。我不想使用unix cron。

我要考试。php文件的调用时间不早于每天的特定时间。请帮助并指定应在其中执行的文件。

谢谢

3 个回复
最合适的回答,由SO网友:Meschiany 整理而成

我现在正在使用crony,它工作得很好。

https://wordpress.org/plugins/crony/

有了这个cron,您可以轻松地将php文件设置为按自己的时间间隔启动或自定义代码。这取代了其他插件,这些插件可以帮助您设置自定义间隔,而不是代码和时间表本身。(即插即用-无需更改代码)

SO网友:mikemike

这取决于您所说的“我希望test.php文件的调用时间不早于每天的特定时间”是什么意思。

设置cron作业非常简单,只需执行以下操作:

<?php
register_activation_hook( __FILE__, \'prefix_activation\' );
/**
 * On activation, set a time, frequency and name of an action hook to be scheduled.
 */
function prefix_activation() {
    // Schedule job for 3pm every day
    wp_schedule_event( mktime(15, 0, 0, date("n"), date("j"), date("Y")), \'daily\', \'prefix_daily_event_hook\' );
}

add_action( \'prefix_daily_event_hook\', \'prefix_do_this_daily\' );
/**
 * On the scheduled action hook, run the function.
 */
function prefix_do_this_daily() {
    // do something every day
}
你决定在里面做什么prefix_do_this_daily 由你决定。

SO网友:TBI Infotech

您可以通过调用以下命令手动运行WP cron:http://example.com/wp-cron.php?doing_cron

如果不想在调试时运行自动cron,请将其添加到/wp配置中。php文件:

define(\'DISABLE\\u WP\\u CRON\',true);如果您在开发环境中,并且想要输出调试信息,那么像这样手动调用它将显示您的调试输出。

或者,您可以使用PHP的内置error_log 函数将消息字符串记录到错误日志以进行调试。您需要将此与WP_DEBUG settings.

这里还有一些链接可以帮助您设置cron

Cronjob

Working Example

结束

相关推荐

WP Cron:将第三方数据保存为用户元

编者注:推特ID和谷歌分析仅作为示例,可交换TL;DR我想每天在用户配置文件中保存一次或两次外部数据。我在我的用户配置文件中添加了两个自定义字段:Twitter\\u ID(我从仪表板手动输入)test1(通过php函数获得的外部数据)我希望能够执行以下操作:在test1 对于每个用户配置文件,我从Twitter_ID.主要目标:我正在制作一个面板,该面板将显示我的用户网站(外部网站)的统计数据。为此,我使用谷歌分析API。我将Google Analytics配置文件编号保存在自定义配置文件字段中。目前,