2017-01-05 15 views
0

archive-mypostype.phpテンプレートで次のクエリを使用して、特定のカスタムフィールド値を持つカスタム投稿を一覧表示しています。アーカイブページのカスタムフィールドによるカスタム投稿タイプのクエリ

$args = array(
    'numberposts' => -1, 
    'post_type'  => 'mypostype', 
    'meta_key'  => 'custom_field_name', 
    'meta_value'  => true, 
    'paged'   => get_query_var('paged'), 
); 

$wp_query = new WP_Query($args); 

if ($wp_query->have_posts()) : 
while ($wp_query->have_posts()) : $wp_query->the_post(); 

これらの投稿はカスタム分類に割り当てられます。このクエリは、カスタム投稿タイプのルートアーカイブでうまく機能しますが、各分類アーカイブページを表示すると、現在のタクソノミーの投稿だけでなく、すべての投稿が表示されます。現在のタクソノミアーカイブの投稿のみを表示できるようにクエリを修正するにはどうすればよいですか?あなたは、このパラメータをhere

WP_Queryコーデックス・ページとそのtaxonomyパラメータに見ることができ

答えて

0

、あなたは、特定の分類に投稿を取得することができます。

$args = array(
    'numberposts' => -1, 
     'post_type'  => 'mypostype',   
     'paged'   => get_query_var('paged'), 
     'meta_query'  => array(
      array(
       'key'=> 'custom_field_name', 
       'value'=> 'true', 
      ) 
    ), 
     'tax_query' => array(
      array(
       'taxonomy' => 'your-taxonomy', // change this with the cpt taxonomy name 
       'field' => 'slug', 
       'terms' => get_query_var('category_name'), // change it with the query var needed 
      ), 
     ) 
); 

希望します。

+0

ありがとうございます。しかし、それは私が後にしていることではありません。申し訳ありませんが、わからない場合は。私はちょうど上記のカスタムフィールドでフィルタリングされた各分類法のための投稿を動的に表示できるようにしたい。 $ wp_queryを削除すると、各タクソノミアーカイブページにアクセスしたときに動作しますが、このクエリを追加すると、各分類別アーカイブページのすべての投稿が表示されます – user2753924

関連する問題