2013-05-19 140 views
0

我想在the_loop在單詞按下之前開始過濾我的查詢結果。我只希望有term_id或term_taxonomy_id等於結果爲1在wordpress中查詢帖子

query_posts('post_type=my_post&term_id=1&posts_per_page=6'); 

這將返回所有行,我是新來的字按所以我不知道我們是否能夠在query_posts使用term_id。有沒有其他方法可以做到這一點?

+0

'term_id'的分類是什麼? –

+0

分類的名稱是我在post_type = my_posts(分類名稱)中給出的。 – Naveen

+0

這是帖子類型不是分類,您的自定義帖子屬於哪個分類標準? –

回答

0

其實,崗位類型是不分類,崗位類型基本上是postpageAttachmentRevisionNavigation MenuCustom Post Types和創造我們使用register_post_type()一個自定義後的類型,所以你沒有創建一個自定義後類型(我已從您的評論中獲得),您已使用register_taxonomy()函數創建了一個自定義分類,在這種情況下,register_taxonomy()中的第一個參數是分類名稱,第二個參數是該分類名稱的對象類型的名稱分類和對象類型可以是內置的Post Type或任何可能已經註冊的Custom Post Type。所以,根據你給出的例子婁

register_taxonomy( 
    'mumG', 
    'mumT', 
    array( 
     'label' => __('Label'), 
     'show_ui' => false, 
    ) 
); 

在上面的代碼中,你已經創建了一個自定義分類和它的名字是mumG,第二個參數mumT作爲對象類型的分類,似乎有除非您不使用register_post_type()函數註冊/創建一個自定義帖子類型,否則WordPress中沒有這樣的對象(post_type)。所以,如果你不想創建一個自定義職位類型這種分類,那麼你應該在mumT的地方作爲崗位類型使用內置的支柱式post,並且可以使用以下query檢索

$args = array( 
     'post_type' => 'post', // if post_type is post 
     'showposts' => -1, 
     'tax_query' => array(
     array(
      'taxonomy' => 'mumG', 
      'terms' => 1, 
      'field' => 'term_id', 
     ) 
    ), 
    'orderby' => 'title', 
    'order' => 'ASC' 
); 
query_posts($args); 

否則,如果你想使用一個自定義後的類型,那麼你必須首先創建一個自定義後類型,然後在post的地方(第二個參數)一樣使用自定義後的名稱

register_taxonomy( 
    'mumG', 
    'yourCustomPostName', // if you have a post_type of 'yourCustomPostName' 
    ...... 
); 

並在查詢中使用'post_type' => 'yourCustomPostName'。請閱讀這些文件以便更好地瞭解Codex上的register_taxonomy(),register_post_type()query_posts()

0

將分類標準類別名稱(sliders_category)替換爲您的分類標準類別名稱。

$args = array(
       'tax_query' => array(
            array(
              'taxonomy' => 'sliders_category', 
              'field' => 'id', 
              'terms' => '1' 
             ) 

          ), 
       'post_type'=>'my_post', 
       'order'=>'ASC', 
       'posts_per_page'=>6 

       ); 

query_posts($args);