您不确定什么是 WP-Cron、您的网站是否需要它,和/或如何禁用它?
您想删除 wp-cron 并将其替换为真正的 cron 作业吗?
在高流量站点中,将 wp-cron 替换为您自己的 cron作业 可以帮助您更可靠地执行站点的计划活动,同时减轻服务器的负担。
目录
什么是 WP-Cron?
WP-Cron 是一个文件/功能,用于管理 WordPress 网站上的时间敏感任务。
假设您已安排一个帖子在周三上午 9:30 上线。 Wp-cron 确保这一切按时发生(或尽可能接近“按时”——稍后会详细介绍)。
除了确保基本的 WordPress 功能正常工作之外,许多 WordPress 插件还依赖 wp-cron 来管理插件的日程敏感元素。
为什么要禁用 WP-Cron?
禁用 wp-cron 并将其替换为您自己的专用 cron 作业有两个原因:
- 可靠性: 因为它需要访问网站才能运行,所以 wp-cron 并不总是依赖于低流量网站,如上面的示例所示。 使用真正的 cron 作业,您可以安排任务每 X 分钟运行一次,无论是否有任何访问者。
- 性能 — 一些用户不喜欢高流量网站上的 wp-cron,因为 WordPress 几乎每次访问时都会运行 wp-cron.php 文件。 WordPress 尝试通过每 60 秒不执行一次以上来将这种情况降至最低,但由于各种技术因素(例如多个访问者同时激活 wp-cron),仍然可能会出现性能问题。
WP-Cron 如何工作?
WP-Cron 仅在人们访问您的网站时才能工作,这是其最大的缺陷之一。
每次您或其他人访问您的 WordPress 网站时,WordPress 都会运行 wp-cron.php 并检查是否已设置任何任务。 如果有已设置要运行的任务,WordPress 将执行并完成它们。
如何禁用 WP-Cron?
既然我们已经介绍了“什么”和“为什么”,那么让我们深入探讨“如何”。 wp-cron 将被禁用,并且您自己的服务器 cron 作业将代替它安装(或其他解决方案)。
为了完成该过程,有两个步骤:
- 为了使 WordPress 在每次访问时都不会执行内置的 wp-cron 功能,您必须禁用 wp-cron 功能。 只需要在站点的 wp-config.php 文件中添加一行代码即可。
- 为了让 wp-cron.php 在您指定的时间运行,您必须创建一个 cron 作业来执行此操作。 WP-cron.php 可以按照预定的时间表执行,无论您的站点是否接收访问者。
结论
WP-Cron 是一个 WordPress 插件,可帮助您管理网站上基于时间的活动。 但是,对于低流量站点,其运行的默认方法可能不稳定,而对于高流量站点,它可能会产生性能问题。
由于这些原因,您应该禁用默认系统并将其替换为您自己的基于时间的 cron 系统。