- 插件基础知识
- 插件安全
- 钩子
- 隐私
- 管理菜单
- 简码
- 设置
- 元数据
- 自定义帖子类型
- 分类法
- 用户
-
- JavaScript、Ajax 和 jQuery
- 任务调度
- 国际化
- 插件目录
- 开发人员工具
-
将 WP-Cron 挂接到系统任务计划程序
如前所述,WP-Cron 不会连续运行,如果有必须按时运行的关键任务,这可能会成为一个问题。有一个简单的解决方案。只需将系统的任务调度程序设置为按您希望的时间间隔(或在需要的特定时间)运行。最简单的解决方案是使用工具向文件发出 Web 请求wp-cron.php
。
在您的系统上安排任务后,还需要完成一个步骤。WordPress 将在每个页面加载时继续运行 WP-Cron。这不再是必需的,并且会导致服务器上的额外资源使用。可以在文件中禁用 WP-Cron wp-config.php
。打开wp-config.php
文件进行编辑并添加以下行:
define( 'DISABLE_WP_CRON', true );
视窗
Windows 将其基于时间的调度系统称为任务调度程序。可以通过控制面板中的管理工具访问它。
设置任务的方式因服务器设置而异。一种方法是使用 PowerShell 和基本任务。创建基本任务后,可以使用以下命令调用 WordPress Cron 脚本。
powershell "Invoke-WebRequest http://YOUR_SITE_URL/wp-cron.php"
MacOS 和 Linux
Mac OS X 和 Linux 都使用 cron 作为它们基于时间的调度系统。它通常是使用命令从终端访问crontab -e
。应该注意的是,任务将以普通用户或根用户身份运行,具体取决于运行命令的系统用户。
Cron 有一个特定的语法需要遵循,包含以下部分:
- 分钟
- 小时
- 一个月中的第几天
- 月
- 星期几
- 要执行的命令
如果无论哪个时间段都应运行命令,则应使用星号 (*)。例如,如果您想要每 15 分钟运行一次命令,而不管小时、日期或月份,它看起来像:
*/15 * * * * command
许多服务器已经wget
安装,这是一个调用 WordPress Cron 脚本的简单工具。
wget --delete-after http://YOUR_SITE_URL/wp-cron.php
笔记:注意:如果没有 –delete-after 选项,wget 将保存 HTTP GET 请求的输出。
每日调用您网站的 WordPress Cron,每天晚上午夜触发,看起来类似于:
0 0 * * * wget --delete-after http://YOUR_SITE_URL/wp-cron.php