Суть вопроса такова, есть тип записей products, сделал таксономию категории и добавил к таксономии checkbox "vibor"
"Выводить на странице X"? где сделала один выбор yes : да.
И вот хочу выводить определенные категории и товары внутри этой категории если стоит эта галочка на чекбоксе в самой категории?
Как сделать правильный запрос? вообще в ступор зашел
Пытался делать так
<?php
//НАЧАЛО СПИСКА
$arg_cat = array(
'orderby' => 'name',
'order' => 'ASC',
'hide_empty' => 1,
'meta_key' => 'vyvodit_na_strai',
'meta_value' => 'yes',
);
$categories = get_taxonomies( $arg_cat );
if( $categories ){
foreach( $categories as $cat ){
$arg_posts = array(
'post_type' => 'product',
'posts_per_page' => 3,
'tax_query' => array(
array(
'taxonomy' => 'product-cat',
'field' => 'term_id',
'terms' => array( $cat->cat_ID )
)
)
);
$query = new WP_Query($arg_posts);
if ($query->have_posts() ) : ?>
<a href="<?php echo get_category_link( $cat->term_id ); ?>"><h2><?php echo $cat->name; ?></h2></a>
<ul>
<?php while ( $query->have_posts() ) : $query->the_post(); ?>
<li>
<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><h3><?php the_title(); ?></h3></a>
</li>
<?php endwhile; wp_reset_postdata(); ?>
</ul>
<?php endif;
} }
// КОНЕЦ
?>
UPD
Сначала вывел по разделенным таксономиям
<?php
$terms = get_terms( 'product-cat', array(
'orderby' => 'name',
'hide_empty' => 1
) );
// теперь выполняется запрос для каждого семейства животных
foreach( $terms as $term ) {
// Определение запроса
$args = array(
'post_type' => 'product',
'product-cat' => $term->slug
);
$query = new WP_Query( $args );
// вывод названий записей в тегах заголовков
echo'<h2>' . $term->name . '</h2>';
// вывод списком заголовков записей
echo '<ul>';
// Начало цикла
while ( $query->have_posts() ) : $query->the_post(); ?>
<li class="animal-listing" id="post-<?php the_ID(); ?>">
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
</li>
<?php endwhile;
echo '</ul>';
// используем сброс данных записи, чтобы восстановить оригинальный запрос
wp_reset_postdata();
} ?>
вывелось прекрасно, но вот когда добавляю пользовательское поле(через ACF) то невыводит
$terms = get_terms( 'product-cat', array(
'orderby' => 'name',
'hide_empty' => 1,
'meta_key' => 'vyvodit_na_strai',
'meta_value' => 'yes'
) );