我有两个 foreach 循环。第一个从 Wordpress 中获取大量问题,第二个应该获取多个答案。如果不涉及问题的一些随机化,这是直截了当的,这会让人感到困惑。
这是两个没有被随机化的 foreach 循环。
<?php
$repeater = get_field('step_by_step_test');
foreach( $repeater as $repeater_row ){ ?>
<p><?php echo $repeater_row['question']; ?></p>
<?php $rows = $repeater_row['answer_options'];
foreach ($rows as $row){ ?>
<?php echo $row['answer']; ?><br />
<?php } ?>
<?php } ?>
这会遍历每个问题并获取多个答案。
我怎样才能将它随机化问题?这是我的尝试,这适用于获取一组随机的问题,但我在答案部分遇到错误(为 foreach 提供的参数无效)。
<?php
$amount = get_field('select_number_of_questions');
$repeater = get_field('step_by_step_test');
$random_rows = array_rand( $repeater, $amount );
echo implode(', ', $random_rows);
foreach( $random_rows as $repeater_row ){ ?>
<p><?php echo $repeater[$repeater_row]['question']; ?></p>
<?php $rows = get_sub_field('answer_options');
foreach ($rows as $row){ ?>
<?php echo $row['answer']; ?><br />
<?php } ?>
<?php } ?>
我将此插件用于 wordpress - http://www.advancedcustomfields.com/