如何让wp_insert_post创建的文章标题包含自动生成的帖子ID?
实现方法
wp_insert_post 函数执行后会返回新创建文章的ID,我们可以利用这个ID直接更新文章标题,具体代码如下:
// 初始化文章参数数组 $wordpress_post = array( 'post_title' => 'Preorder №', 'post_content' => 'Post Content', 'post_status' => 'publish', 'post_author' => 1, 'post_type' => 'preorders' ); // 创建文章并获取返回的ID $post_id = wp_insert_post( $wordpress_post ); // 校验文章是否创建成功,避免错误情况 if ( $post_id && !is_wp_error( $post_id ) ) { // 准备更新的标题数据 $updated_post = array( 'ID' => $post_id, 'post_title' => 'Preorder № ' . $post_id ); // 调用WordPress内置函数更新文章标题 wp_update_post( $updated_post ); }
核心要点说明
- 获取创建后的ID:
wp_insert_post成功创建文章时会返回数字类型的文章ID,失败则返回WP_Error对象或0,必须用is_wp_error做合法性校验。 - 标准更新方式:
wp_update_post是WordPress官方提供的文章更新函数,只需传入包含目标文章ID和新标题的数组,即可完成标题修改。
内容的提问来源于stack exchange,提问作者creators
相关产品推荐
相关产品推荐

