Добрый день.
Есть несколько страниц объектов с отзывами (поля ACF-повторители)
Есть Главная страница, на которой нужно вывести два отзыва из рандомных объектов. Т.е. берём рандомную страницу объекта, выводим первый отзыв-элемент повторителя. Потом берём вторую рандомную страницу объекта и берём оттуда первый отзыв-элемент повторителя.
Для примера есть три страницы объектов: соответственно с одним, двумя и тремя отзывами.
Что делаю я:
<?php
$args = array(
'numberposts' => -1,
'post_type' => 'page', // тип записи - страница
'meta_key' => 'pans_feedback', // с полем повторителя отзыва "pans_feedback"
'showposts' => '2', // два случайных поста
'order' => 'rand' // в рандомном порядке
);
$the_query = new WP_Query( $args );
?>
<?php if( $the_query->have_posts() ): ?>
<?php while( $the_query->have_posts() ) : $the_query->the_post(); ?>
<?php
if( have_rows('pans_feedback') ):
while ( have_rows('pans_feedback') ) : the_row();
?>
<?php
// поля повторителя "pans_feedback"
$pans_feedback_avatar = get_sub_field('pans_feedback_avatar');
$pans_feedback_name = get_sub_field('pans_feedback_name');
$pans_feedback_text = get_sub_field('pans_feedback_text');
?>
<img src="<?php echo $pans_feedback_avatar; ?>" alt="" class="feedback-block-item-photo mr-xe-rt-16 hidden-xe" />
<?php echo $pans_feedback_name; ?>
<?php echo $pans_feedback_text; ?>
<?php endwhile;
else :
echo 'Пусто';
endif;
?>
<?php endwhile; ?>
<?php endif; ?>
<?php wp_reset_query(); ?>
Всё это выводит отзывы из двух определённых (не рандомные, они не меняются при обновлении страницы) объектов. Один отзыв из того объекта, где один отзыв, и два оттуда, где два.
Т.е. выводит все отзывы двух определённых объектов.
Не работает рандом выбора объектов-страниц. И надо ограничить вывод только одного отзыва со страницы.