2015-10-05 129 views
1

我想添加一個帖子到分類下的類別。我使用的代碼是: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這個系統正常工作時不使用自定義後類型(在這種情況下分類。 '美食')

任何想法

+0

你應該問這個問題http://wordpress.stackexchange.com/ – bernie

回答

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; 

    } 

喬希給我指路,但他的語法不對。它是第一類,第二類是分類,有些東西不得不被刪除。

0

你需要wp_set_object_terms,這需要後期ID,術語,分類,並追加作爲參數呢?例如:。

$user_id = wp_insert_post($id); 

wp_set_object_terms($user_id, 'cate', 'category', true); 
+0

這可以直接在wp_insert_post上完成,而無需調用第二個函數? –

+0

不,不幸的不是。 –

+0

作爲一個術語的類別,還是輸入類別ID而不是'category'?你能編輯我的代碼嗎?我添加了「wp_set_object_terms($ user_id,'cate','category',true);」並且它再次未被分類... –

相關問題