2
私は開発と呼ばれるカスタム投稿タイプを持っています。彼らは建物です。彼らは2つの異なるタクソノミーを持っています:都市とステータス。ビルの1つの都市タクソノミーページで、ステータス分類に関連するすべての投稿を表示しようとしています。タクソノミのページで、そのタクソノミと関連する投稿を表示します。
<?php
// Vars
$status_taxonomy = 'development_status';
$devs = get_terms(array(
'taxonomy' => $status_taxonomy,
'hide_empty' => true,
));
?>
<?php
foreach($devs as $dev) :
$dev_id = $dev->term_id;
$dev_name = $dev->name;
?>
<?php
$term_slug = $dev->slug;
$dev_posts = new WP_Query(array(
'post_type' => 'developments',
'posts_per_page' => -1, //important for a PHP memory limit warning
'tax_query' => array(
array(
'taxonomy' => $status_taxonomy,
'field' => 'slug',
'terms' => $term_slug,
'operator' => 'IN',
),
),
));
if($dev_posts->have_posts()) :
echo '<h3>'. $dev_name .'</h3>';
while ($dev_posts->have_posts()) : $dev_posts->the_post();
?>
<div class="col-xs-12">
<h3>$dev_name</h3>
</div>
<div class="col-md-4">
<h4><?php the_title(); ?></h4>
</div>
<?php
endwhile;
endif;
wp_reset_postdata();
?>
<?php
endforeach;
?>
このコードはすべてのステータス用語を出力しますが、すべての投稿も表示していますので、Cityに関連付けられている投稿を表示する必要があります。私はこれを達成するために上記のコードをどのように変更するのか分かりません。
$current_term = get_term_by('slug', get_query_var('term'), get_query_var('taxonomy'));
し、現在の都市の分類が制約に追加されるように、別の配列を追加するためにあなたに
tax_query
を変更します:
ありがとうございます。これはうまくいった。私は第2の 'tax_query'を追加するとは思わなかった。 –