尝试使用wp_INSERT_POST更新帖子时出现重复帖子。

时间:2012-06-05 作者:Average Joe

在一个空的wordpress数据库上,我使用wp\\u insert\\u post插入一篇示例文章。

因为它是一个空数据库,所以我添加的第一篇帖子以id 1结尾。我检查了一下,在wp\\u帖子中,一切看起来都是对的(因为某些原因,post\\u name是空的,但我现在不想重点讨论这个问题)。

问题是,当我想更新那篇文章(再次使用wp\\u insert\\u post)而不是更新早期记录时,我最终得到的是帖子id 2!

如果您问我如何使用wp\\u insert\\u post更新记录,我只需在为wp\\u insert\\u post构建$数据数组时将ID设置为1。

codex说,当您将“ID”数组元素提供给wp\\u insert\\u post的$数据数组时,它只是用该ID更新该post。

嗯,就我而言,它不是。

我最终得到了帖子id 2。Post ID 2的作者为0(Post ID的作者为1),Post ID 2的Post\\u名称为1-revision(Post ID 1s Post\\u名称为空,如上所述)

你知道为什么会这样吗?

还是我应该忘记使用wp\\u insert\\u post进行帖子更新的想法?

1 个回复
最合适的回答,由SO网友:SickHippie 整理而成

您应该插入带有wp_insert_post 并使用更新帖子wp_update_post. wp_update_post 将向数据库添加修订,并更新发布/草稿帖子数据。

结束

相关推荐

Get list of months with posts

我正试图在我的自定义主题上添加一个基于月后的过滤器,类似于归档文件,但有一些不同。什么是最好的方式来获得一份我们有帖子的月份列表?谢谢Alex我使用了以下查询: $wpdb->get_results(\"SELECT DISTINCT YEAR(post_date) AS `year`, MONTH(post_date) AS `month`, count(ID) as posts FROM $wpdb->posts