我收到错误的WordPress wp_update_post()
函数说“帖子ID无效”。这是我的代码:
$current_item = 273;
$my_post = array(
'ID' => $current_item,
'post_title' => 'This is the post title.',
'post_content' => 'This is the updated content.',
);
$post_id = wp_update_post( $my_post, true );
if (is_wp_error($post_id)) {
$errors = $post_id->get_error_messages();
foreach ($errors as $error) {
echo $error;
}
}
提前致谢。
答案 0 :(得分:5)
使用0
,而不是'import_id'
。
如果您指定的ID上没有帖子,'ID'
不会创建新帖子 - 它会返回错误。要指定新帖子的ID,请使用wp_update_post()
。
但是请注意,如果有一个包含该ID的帖子,'import_id' => $current_item
将导致新帖子而不是更新。因此,如果您想要使用该ID创建新帖子或更新该ID的帖子,您需要import_id
语句来选择您的密钥:
if
这是你闪亮的新代码。
$newPostKey = (get_post_status($current_item)) ? 'ID' : 'import_id';
// If there's a post with an ID of $current_item, we'll use 'ID'.
// Otherwise, use 'import_id'.