だから、私はどこでも見てきました。私はあらゆる種類の組み合わせを試しました。これまでのところ、何もない。私のフロントページに表示するには、1つのカテゴリではなく、最も重要な標準投稿形式の2つの投稿をクエリする必要があります。私はWP 3.9.1で働いています。これは私が使用する構文です:
$query = new WP_Query( array(
'post_type' => 'post',
'cat' => '-1',
'posts_per_page' => 2,
array(
'taxonomy' => 'post_format',
'field' => 'slug',
'terms' => array( 'post-format-gallery', 'post-format-video' ),
'operator' => 'NOT IN'
)
) );
それだけでは動作しません。 2つの結果が得られますが、ビデオとギャラリーのフォーマットは処理されません。私はtax_query => array (.....)
の使用も試みましたが、まったく結果が出ませんでした。
最初のケースでは、$query->have_posts
はすべてのフォーマットのすべての投稿を返します。 2番目のケースでは、コンテンツをまったく返しません。
納税申告書の構文が少しずれているようです。これを試して:
$query = new WP_Query( array(
'post_type' => 'post',
'cat' => '-1',
'posts_per_page' => 2,
'tax_query' => array( array(
'taxonomy' => 'post_format',
'field' => 'slug',
'terms' => array('post-format-aside', 'post-format-gallery', 'post-format-link', 'post-format-image', 'post-format-quote', 'post-format-status', 'post-format-audio', 'post-format-chat', 'post-format-video'),
'operator' => 'NOT IN'
) )
);
(注意:これらの投稿フォーマットの一部を使用していない場合は、それらを 'terms'配列から削除することをお勧めします。ただし、目標が '通常の'フォーマットのみを表示することである場合は、そのまま使用します。将来のコンテンツ変更の場合)
WordPress 4.1以降、 WP_Tax_Query
は分類法の問い合わせにNOT EXISTS
演算子をサポートします。 形式が指定されていない場合に限り、投稿は "標準"形式になります。これは、標準投稿形式 で投稿をクエリするのに推奨される方法です。また、投稿フォーマットが追加、削除、変更される可能性がある将来/カスタマイズのケースについても説明します。結果として得られる分類クエリは、単純に次のとおりです。
array(
'taxonomy' => 'post_format',
'operator' => 'NOT EXISTS',
)
これをクエリ例で使用すると、次のようになります。
$query = new WP_Query( array(
'post_type' => 'post',
'cat' => '-1',
'posts_per_page' => 2,
'tax_query' => array(
array(
'taxonomy' => 'post_format',
'operator' => 'NOT EXISTS',
),
),
);