在wordpress中创建了一个cron作业但只有当有人访问该页面时才会显示日志

时间:2015-08-20 12:22:59

标签: php wordpress cron

在wordpress中,我一直致力于创建一个cron作业。目前,Cron作业仅在有人访问该页面时显示日志。但是,我希望它在没有任何页面访问的情况下运行。我知道可以做到。但是怎么样,这就是我不知道的。请指导我的朋友。我使用了函数wp_scheduled_event

1 个答案:

答案 0 :(得分:2)

这是正常行为。 Wordpress crons不是服务器crons,它们依赖于PHP来执行,所以它只有在有人访问你的网站时才会运行。

来自wp_schedule_event文档:

  

如果有人访问您的WordPress网站,则会触发该操作   预定的时间已过。

如果您想要通过此限制,则需要服务器cron。取决于您的托管,您可以通过管理器配置cron,或者如果您在服务器上具有SSH访问权限(因此,如果它不是共享主机),请执行以下命令:

crontab -e

它会打开你的crontab文件。在里面添加这一行来添加一个cron作业:

*/30 * * * * php-cli -f /path/to/your/php/script.php

替换为php脚本的正确路径。此命令将每30分钟执行一次脚本 - 将其更改为您需要的任何内容(read more)。

如果您在共享主机上并且您的经理不允许您创建cron作业,您可以使用this one之类的在线服务来执行您的脚本。