現在、次のコードを使用して、特定のCPTと分類法の投稿へのリンクを含むリストを表示しています。
<?php
$custom_terms = get_terms('videoscategory');
foreach(array($custom_terms as $custom_term) {
wp_reset_query();
$args = array('post_type' => 'product',
'tax_query' => array(
'relation' => 'AND',
array(
'taxonomy' => 'videoscategory',
'field' => 'slug',
'terms' => $custom_term->slug
),
array(
'taxonomy' => 'product_category',
'field' => 'slug',
'terms' => $other_custom_term->slug
),
)
);
$loop = new WP_Query($args);
if($loop->have_posts()) {
echo '<h1 style="margin-top:10px;">'.$custom_term->name.'</h1>';
while($loop->have_posts()) : $loop->the_post();
echo '<h2><a href="'.get_permalink().'">'.get_the_title().'</a></h2>';
endwhile;
}
} ?>
それはそれがあるべきようにうまく働いています、しかし私は私の両方の分類学にあるポストだけを表示したいです。そのために何を追加する必要がありますか?
どうぞよろしくお願いします。
わかりました。
<?php
$custom_terms = get_terms('your_other_category');
$other_custom_terms = get_terms('your_category');
foreach ($custom_terms as $custom_term) {
foreach ($other_custom_terms as $other_custom_term) {
wp_reset_query();
$args = array('post_type' => 'product',
'tax_query' => array(
'relation' => 'AND',
array(
'taxonomy' => 'your_category',
'field' => 'slug',
'terms' => $other_custom_term->slug
),
array(
'taxonomy' => 'your_other_category',
'field' => 'slug',
'terms' => $custom_term->slug,
),
),
);
$loop = new WP_Query($args);
if($loop->have_posts()) {
echo '<h1 style="margin-top:10px;">'.$custom_term->name.'</h1>';
while($loop->have_posts()) : $loop->the_post();
echo '<h2><a href="'.get_permalink().'">'.get_the_title().'</a></h2>';
endwhile;
}
}
} ?>
the Codex によると、いくつかの分類法から投稿を検索する方法は次のとおりです。
'tax_query' => array(
'relation' => 'AND',
array(
'taxonomy' => 'videoscategory',
'field' => 'slug',
'terms' => $custom_term->slug
),
array(
'taxonomy' => 'yourothertaxonomy',
'field' => 'slug',
'terms' => $other_custom_term->slug
)
)