我有一个带有自定义帖子类型的 WordPress 网站,当在 SoundCloud 中创建新项目时,该网站会以编程方式创建帖子。这些帖子有 ACF 字段 - 其中有一个 event_date 字段,它是一个日期选择器。
一切都与后期创作完美配合。问题是,当我在网站前端显示这些按 event_date 按 DESC 顺序排序的帖子时,它们显示的顺序不正确。这仅在以编程方式创建帖子后最初发生。 如果我在 WP Admin 中打开帖子,然后保存它们(不更改任何内容),那么它们将以正确的排序顺序显示。就像在通过手动保存以编程方式创建帖子后必须重新初始化该字段一样。有什么想法可以解决问题而无需每天手动查看每个帖子吗?
我确实构建了一个 cron,在每个帖子上运行 wp_udpate_post,仅将帖子 ID 作为参数,但它没有解决问题。
出现此问题的原因可能是,当以编程方式创建帖子时,在手动保存帖子之前,WordPress 无法完全识别 event_date 字段。如果日期值未正确存储在数据库中,或者缺少必要的元数据或缓存刷新,则可能会发生这种情况。以下是一些确保日期正确存储和识别以进行排序的解决方案: