Wordpress,将帖子添加到自定义分类法的类别

时间:2015-10-05 18:19:21

标签: php wordpress

我正在尝试将帖子添加到分类法类别下的类别中。我正在使用的代码是:

$user = get_user_by( 'email', $_POST['user'] );
$id = array(
    'post_title'    => $_POST['title'],
    'post_content'  => $_POST['content'],
    'post_date'     => date('Y-m-d H:i:s'),
    'post_author'   => $user->ID,
    'taxonomy' => ('cate'),
    'post_type'     => 'ad',
    'post_category' => array(425),
    'post_status'   => 'publish',
); 
 $user_id = wp_insert_post($id);
if ( ! is_wp_error( $user_id ) ) {
   $odgovor["success"] = 1;

}

添加帖子但是在“未分类”类别下添加,而不是在所需的类别ID下。当不使用自定义帖子类型时,此系统正常工作。(在这种情况下,分类法'cate')

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

您需要wp_set_object_terms,它会将帖子ID,术语,分类和附加作为参数。例如:

compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }

答案 1 :(得分:0)

我解决了这个问题:

$id = array(
        'post_title'    => $_POST['title'],
        'post_content'  => $_POST['content'],
        'post_date'     => date('Y-m-d H:i:s'),
        'post_author'   => $user->ID,
        'post_type'     => 'ad',
        'post_status'   => 'publish',
    ); 
     $user_id = wp_insert_post($id);
     wp_set_object_terms($user_id, 416, 'cate', true);
    if ( ! is_wp_error( $user_id ) ) {
       $odgovor["success"] = 1;

    }

Josh向我展示了方式,但他的语法不对。它首先是类别,第二类是分类,有些东西必须删除。