私はWPクエリに慣れてきたところで、これについて何か手助けができることを望んでいました。
カスタム分類法(テーマ)を作成し、これらの分類法のいずれかを含む最新の投稿をトップページの投稿としてトップページに表示したいと思います。
今、私は実際にクエリを適切にフィルタするためにそれを取得する方法を考え出すことができないようです、多分誰かが私を修正することができます:
<?php
$args = array(
'tax_query' => array(
array(
'posts_per_page' => 1,
'taxonomy' => 'theme',
'field' => 'slug',
'terms' => array ('text-image', 'just-text', 'just-image')
)
)
);
$query = new WP_Query( $args );
?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
どうぞよろしくお願いいたします。
編集:他の誰かがそれを必要とする場合に備えて、これは完成したコードです。
<?php
$args = array(
'post_type' => 'post', // it's default, you can skip it
'posts_per_page' => '1',
'order_by' => 'date', // it's also default
'order' => 'DESC', // it's also default
'tax_query' => array(
array(
'taxonomy' => 'nameoftaxonomy',
'field' => 'slug',
'terms' => array ('whatever1', 'whatever2', 'whatever3')
)
)
);
$query = new WP_Query( $args );
?>
<?php if (have_posts()) : while( $query->have_posts() ) : $query->the_post(); ?>
助けてくれてありがとう!
あなたはこのようにあなたのオブジェクトを使用しなければなりません:
while ( $query->have_posts() ) : $query->the_post();
WP_Query
引数が間違っています。 posts_per_page
はtax_query
の一部ではありません。以下がうまくいくはずです。
$args = array(
'post_type' => 'post', // it's default, you can skip it
'posts_per_page' => '1',
'order_by' => 'date', // it's also default
'order' => 'DESC', // it's also default
'tax_query' => array(
array(
'taxonomy' => 'theme',
'field' => 'slug',
'terms' => array ('text-image', 'just-text', 'just-image')
)
)
);