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

Created a cron job in wordpress But the logs are displayed only when someone visits the page

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

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

来自 wp_schedule_event 文档:

The action will trigger when someone visits your WordPress site, if the scheduled time has passed.

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

crontab -e

它将打开您的 crontab 文件。在里面添加这一行以添加一个 cron 作业:

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

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

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