尝试立即发布时出错。发布状态=将来(错过时间表错误)

时间:2020-07-21 作者:Anfuca

我们已将移动到新服务器,现在无法发布。至少,我们不能立即发布。

可能有用:我们正在使用Plesk&;CloudFlare。

当我们发布新帖子时post_status 中的值wp_posts 表自动为,future 而不是publish

我们已经很幸运地看到了这篇文章:https://wordpress.org/support/topic/publish-immediately-missing-and-scheduled-posts-fails/

我们已经做的是:

检查服务器时间,一切正常,进入站点运行状况信息,禁用所有插件;已更改为默认主题,禁用了WP Cron并设置了已安装的自定义CronMy Missed ScheduleWP Control 插件(由于第一个插件,每5分钟运行一次的cron事件会强制发布错过的预定帖子)wp cron event run publish_future_post --due-now 没有幸运的PHP扩展according to this

  • 在我的localhost中,一个精确的备份工作得很好,这里有一些在下午12:57发布帖子时的快照…Missed schedule

    在这里,cron thas是在尝试发布之后创建的:cron list

    这就是post_date &;post_date_gmt 查看数据库:post date

    以下是WP中的时间:wordpress time

    所以,直到2小时后,这篇文章才发表
    这是一场噩梦。例如,我们不能使用ACF插件。我们添加了一个新字段,它直到2小时后才出现。。。

    有什么线索吗?

  • 1 个回复
    SO网友:Anfuca

    因此,本例中的问题是PHP没有显示正确的UTC时间。感谢@TomJNowell为我指出了正确的方向。

    这似乎是某些Plesk安装中的错误:https://talk.plesk.com/threads/utc-time-issue-plesk-php-7-3-7-4-on-centos7.356169/

    为了解决这个问题,我们替换了UTC文件usr/share/zoneinfo/UTC 使用另一台服务器的另一个副本。

    之后,UTC时间和当地时间看起来很完美,我们可以立即发布。