将每日执行更改为PHP中的每小时执行

时间:2013-02-20 10:48:22

标签: php wordpress scheduler

之前我问过这个问题,但问的方式不清楚,所以我再试一次。

我试图让这个PHP每小时而不是每天执行。这是一个导入RSS提要的wordpress插件。这是GPL。我只是便宜的托管,所以我无法访问服务器上的命令行/ cron。

我在这里搜索过并找到了这篇文章:PHP Running an hourly script但它并没有帮助我理解。我不知道PHP,我已经尝试过编辑它,打破它,谷歌搜索它,再打破它等等。

如果有人可以编辑它以便它能够正常工作,我会永远感激。

这是每天执行的原始工作代码:http://pastebin.ca/2313994

我正在查看我们定义帖子日期的这一点:

define('SCRD_DEFAULT_POST_DAYS', 'a:7:{s:6:"Monday";i:0;s:7:"Tuesday";i:0;s:9:"Wednesday";i:0;s:8:"Thursday";i:0;s:6:"Friday";i:1;s:8:"Saturday";i:0;s:6:"Sunday";i:0;}');

我在想,如果我24小时都知道PHP,我可以输入所有24个值,这会让脚本每小时运行一次?

24小时内定义的代码是什么?

s:6:"12:00";?:?;?:?:"13:00";?:?;?:?:"14:00";?:?;?:?: etc

或者这种方法不起作用?

我google了:define('SCRD_DEFAULT_POST_DAYS',但只找到这篇文章和原始代码。

我已经尝试过编辑这个部分:define('SCRD_DEFAULT_HOUR','17');阅读

定义('SCRD_DEFAULT_HOUR','17''18''19''20'等,但它对我不起作用。

1 个答案:

答案 0 :(得分:1)

插件作者在这里。

你正在寻找错误的地方。要破解这一点,您需要操作计划下一个摘要的函数,尤其是从第65行开始的function scrd_do_digest

我没有对此进行过测试,但我首先要更换第67行的代码:

$next_digest = $right_now + 3600;   // schedule for one hour from now

现在这是一个完全黑客,所以如果你这样做,显示下一个摘要时间的其他地方将对你说谎。此外,每次更新设置时,都会根据您在UI中设置的计划设置摘要的下一个过帐。你或许可以使用“立即发布”按钮来提前开球。