如果 WordPress 站点的文章定时发布功能总是失败,有以下几种可能原因和解决方法:
- 定时任务没有启用:在 WordPress 后台管理界面中,到“设置”->“常规”页面,检查“WordPress 地址(URL)”和“网站地址(URL)”是否正确配置,如果不正确,则 WordPress 无法正常启动定时任务。确保网站的“WordPress 地址(URL)”和“网站地址(URL)”设置正确,以便 WordPress 能够调用自己。同时,需要确认 WordPress 安装所在的服务器能够正常连接外部网络,否则 WordPress 将无法执行定时任务。
- Cron 服务没有运行:WordPress 的定时任务需要 Cron 服务来运行,如果 Cron 服务没有运行,则 WordPress 站点的定时发布功能将会失败。可以通过终端运行以下命令来检查 Cron 服务是否已经运行:
|
|
如果输出中有类似于 /usr/sbin/cron -f
的内容,则说明 Cron 服务已经在运行。如果没有输出或者输出中没有这个进程,则需要运行以下命令来启动 Cron 服务:
|
|
- WP-Cron 没有正确配置:WP-Cron 是 WordPress 内置的一个计划任务管理器,如果 WP-Cron 没有正确配置,则定时发布功能将会失败。可以通过将以下代码添加到 wp-config.php 文件中来禁用 WP-Cron:
|
|
然后,使用终端运行以下命令来配置 Cron 服务,输入 crontab -e
然后切换到输入模式输入以下内容:
|
|
其中,*/5 * * * *
表示每隔五分钟执行一次,/usr/bin/php -q /path/to/wordpress/wp-cron.php
是要执行的命令。请将 /path/to/wordpress
替换为你的 WordPress 安装目录的路径。
4. 定时任务队列堆积:如果站点出现大量未执行的定时任务,可能导致新的定时任务无法被执行。可以使用 WP-CLI 工具清理过期的定时任务:
|
|
运行以上命令可以立即执行所有已经逾期但未执行的定时任务。同时,你还可以添加一个计划任务,定期清理过期的定时任务。
通过排除以上几种因素,应该能够解决 WordPress 定时发布失败的问题。