wp_insert_post允许为未登录的用户设置分类法类别 - wordpress

时间:2016-12-11 21:25:26

标签: php wordpress custom-taxonomy taxonomy-terms

我在前端有一个按钮,一旦点击它就登录并且没有登录用户留言并且我使用wp_insert_post()函数添加新消息,这是我的代码:

$post_id = wp_insert_post(array (
    'post_type' => 'messages',
    'post_title' => $title,
    'post_content' => $message,
    'post_excerpt' => $excerpt,
    'post_status' => 'publish',
    'comment_status' => 'closed',
    'post_author' => 1,
    'ping_status' => 'closed',
    'tax_input' => array(
        'message-category' => array(26),
    )
));

但是除了添加新帖子之外,我还需要设置分类法类别。但是仅在用户登录时才设置类别。对于未登录的用户,它不起作用。我试图添加post_author(检查上面),但是再次没有帮助。

还尝试使用以下功能,但是当没有登录用户留下消息时再没有运气和类别设置:

wp_set_object_terms( $post_id, array(26), 'message-category', true );

并尝试了post_category但又没有运气。

有什么想法吗?

1 个答案:

答案 0 :(得分:1)

您可以使用post_category作为wp_insert_post函数的参数。请参阅doc

你的功能应该是这样的:

`

$post_id = wp_insert_post(array (
    'post_type' => 'messages',
    'post_title' => $title,
    'post_content' => $message,
    'post_excerpt' => $excerpt,
    'post_status' => 'publish',
    'comment_status' => 'closed',
    'post_author' => 1,
    'ping_status' => 'closed',
    'post_category' => array(6)
   )
);
 `