十年专注,只做WordPress定制开发一件事

WordPress插入或更新文章函数wp_insert_post()

王超
2020-09-28
WP常用函数
2,515 次

在做WordPress主题定制开发或插件开发的时候,经常需要通过代码插入或者更新一篇文章,这个时候我们就可以使用WordPress自带的文章插入函数wp_insert_post();

函数基本用法

<?php wp_insert_post( $post, $wp_error ); ?>

函数参数详解

$post

要插入或更新的文章对象,和数据库中的wp_posts数据表中的字段一一对应;

$wp_error

默认:false

文章插入或更新失败时是否返回WP_Error对象

其中$post对象具体参数如下:

$post = array(
    'ID' => [ <post id> ] //需要更新的文章编号,如果不设置,则为插入一篇新文章
    'menu_order' => [ <order> ] //如果新文章是页面,设置显示顺序
    'comment_status' => [ 'closed' | 'open' ] // 评论的状态,'closed'关闭评论.
    'ping_status' => [ 'closed' | 'open' ] // ping的状态,'closed' 关闭 pingbacks和trackbacks
    'pinged' => [ ? ] //该文章被ping到的地址
    'post_author' => [ <user ID> ] //作者编号
    'post_category' => [ array(<category id>, <...>) ] //文章归类数组
    'post_content' => [ <the text of the post> ] //文章内容,必填
    'post_date' => [ Y-m-d H:i:s ] //文章编辑日期
    'post_date_gmt' => [ Y-m-d H:i:s ] //文章编辑GMT日期
    'post_excerpt' => [ <an excerpt> ] //摘要信息
    'post_name' => [ <the name> ] // (slug) 文章别名
    'post_parent' => [ <post ID> ] //新文章的父文章编号
    'post_password' => [ ? ] //文章浏览密码
    'post_status' => [ 'draft' | 'publish' | 'pending'| 'future' | 'private' ] //新文章的状态
    'post_title' => [ <the title> ] //文章标题,必填
    'post_type' => [ 'post' | 'page' | 'link' | 'nav_menu_item' | custom post type ] //文章类型:文章、页面、链接、菜单、其他定制类型
    'tags_input' => [ '<tag>, <tag>, <...>' ] //标签字符串
    'to_ping' => [ ? ] //该文章需要ping到的地址
    'tax_input' => [ array( 'taxonomy_name' => array( 'term', 'term2', 'term3' ) ) ] // 附加注释数组
);

函数返回值

如果文章成功插入或更新,返回文章编号。否则返回0.

函数使用方法举例

$my_post = array(
    'post_title' => 'My post',
    'post_content' => 'This is my post.',
    'post_status' => 'publish',
    'post_author' => 1,
    'post_category' => array(8,39)
);
wp_insert_post( $my_post );

以上就是本文关于WordPress插入或更新文章函数wp_insert_post()的详细介绍和使用方法举例,希望能对您有所帮助。

WordPress日记主要承接WordPress主题定制开发PSD转WordPressWordPress仿站以及以WordPress为管理后端的小程序、APP,我们一直秉持“做一个项目,交一个朋友”的理念,希望您是我们下一个朋友。如果您有WordPress主题开发需求,可随时联系QQ:919985494 微信:18539976310

搜索

嘿,有问题找我来帮您!