Выборка записей имеющих термы в двух таксономиях
Пожалуйста подскажите как получить только записи имеющие термы в двух разных таксономиях.
На данный момент я пытаюсь сделать это через WP_Query используя следующий код:
<?php
$program_locations_args = array(
'taxonomy' => 'program_locations',
'parent' => 0,
'hide_empty' => false,
);
$locations = get_terms( $program_locations_args );
$audience_args = array(
'taxonomy' => 'more_program_audience',
'fields' => 'names',
'hide_empty' => false,
);
$program_audiences = get_terms( $audience_args );
foreach ( $locations as $location ) { ?>
<div class="hide" data-region="<?= $location->name; ?>">
<?php foreach ( $program_audiences as $program_audience ) { ?>
<?php
$program_audience_location = new WP_Query( [
'post_type' => 'programs',
'posts_per_page' => - 1,
'nopaging' => true,
'tax_query' => [
'relation' => 'AND',
[
'taxonomy' => 'program_locations',
'field' => 'name ',
'terms' => $location->name,
],
[
'taxonomy' => 'more_program_audience',
'field' => 'name ',
'terms' => $program_audience,
]
]
] );
?>
<div class="hiden" data-name="<?= $program_audience; ?>" data-value="<?= count
( $program_audience_location->posts ); ?>" data-color="color" data-location='<?=
$location->slug; ?>'>
</div>
<?php } ?>
</div>
<?php }; ?>
И у меня выводится везде одно и тоже значение(((
