2019-05-03 22:18
浏览 52


I have custom post created at user's registration. There is also a custom taxonomy ('connection1') created. I need to add this post to that taxonomy.

Post is added fine. Taxonomy is added no problem as well. But for some reason, post is not added to the taxonomy

       $user = new WP_User( $user_id );
       $user->set_role( 'participation' );
       $my_cptpost_args = array(
            'post_title' => 'user-'.$user_id,
            'slug' => $user_id,
            'post_status'   => 'publish',
            'post_type' => 'profile'
        $cpt_id = wp_insert_post( $my_cptpost_args, $wp_error);
        $term_id = term_exists( $user_id, 'connection1' ); 
        wp_set_post_terms($cpt_id , array( $term_id ), 'connection1' );

图片转代码服务由CSDN问答提供 功能建议

我在用户注册时创建了自定义帖子。 还创建了自定义分类('connection1')。 我需要将这篇文章添加到该分类中。

帖子添加正常。 分类标准也没有问题。 但由于某种原因,帖子没有添加到分类中

  $ user = new WP_User($ user_id); 
 $ user-> set_role('participation');  
 $ my_cptpost_args = array(
'post_title'=>'user  - '。$ user_id,
'slug'=> $ user_id,
'post_type  '=>'个人资料'
 $ cpt_id = wp_insert_post($ my_cptpost_args,$ wp_error); 
 wp_insert_term($ user_id,'connection1'); 
 $ term_id = term_exists($ user_id,'connection1'  );  
 wp_set_post_terms($ cpt_id,array($ term_id),'connection1'); 
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • dongxuanchao1425 2019-05-04 00:56

    The issue is related to term_exists function. It can return null/ID/array depending on what data you provided. Check docs. In your case, it will return an array which then you try to assign to terms array which will fail. Also no need to use term_exists function since wp_insert_term will return term ID. Your code should look like this:

    $new_term = wp_insert_term($user_id,'connection1');
    if( ! is_wp_error($new_term) ) {
        wp_set_post_terms($cpt_id , $new_term['term_id'], 'connection1' );
    点赞 打赏 评论

相关推荐 更多相似问题