WP ACF Как выводить только выбранные элементы checkbox полей
Подскажите, пожалуйста как выводить ключи-значения только выбранных элементов чекбоксов
Вот мой код
<div>
<?php
$countries = get_field_object('supported_countries', $postID);
var_dump($countries);
if( $countries['choices'] ): ?>
<ul>
<?php foreach( $countries['choices'] as $value => $label ) : ?>
<li class="country <?php echo $value; ?>"><?php echo $label; ?></li>
<?php endforeach; ?>
</ul>
<?php endif; ?>
</div>
Отчего-то он выводит не только ключь-значение выбранных чекбоксов, а все что были выбраны
Подскажите, как можно это исправить. Что б в ['choices'] были только выбранные поля ?
Ответы (1 шт):
Автор решения: Darth KYL
→ Ссылка
если у вас в настройках выбрано возвращаемое значение array, то это можно сделать вот так
<div>
<?php
$countries = (array) get_field('supported_countries', $postID);
if( $countries ): ?>
<ul>
<?php foreach( $countries as $country ) : ?>
<li class="country <?php echo $country['value']; ?>">
<?php echo $country['label']; ?>
</li>
<?php endforeach; ?>
</ul>
<?php endif; ?>
</div>
если в качестве возвращаемого значения выбрано value, то вывод будет выглядеть вот так:
<div>
<?php
$countries = get_field_object('supported_countries', $postID);
if( $countries['value'] ): ?>
<ul>
<?php foreach( $countries['value'] as $country_value ) : ?>
<li class="country <?php echo $country_value; ?>">
<?php echo $countries['choices'][ $country_value ]; ?>
</li>
<?php endforeach; ?>
</ul>
<?php endif; ?>
</div>

