WordPress как на ладони
Недорогой хостинг для сайтов на WordPress: wordpress.jino.ru

ACF Как получить значение key и value для выбранных checkbox?

Подскажите, как в WordPress плагине Advanced Custom Fields (ACF) для выбраных значений в типе чекбоксов выводить все выбранные и поля и значения в цикле ? (Использую версию 5.9.6)

<li class="info_item">
  <div>Поддерживаемые страны:</div>
  <div>
	<?php
	  $countries = get_field('supported_countries');
	  if( $countries ): ?>
	  <ul>
		<?php foreach( $countries as $country ): ?>
		<li>
		  <?php echo $country['value']; ?> :
		  <?php echo $country['label']; ?>
		</li>
		<?php endforeach; ?>
	  </ul>
	  <?php endif; ?>
  </div>
</li>

Мне на выходе почему-то отдает задублированые значения. Хотя предполагалось что-то по типу it: Italya

Хотя вроде ж как : является символом разделителем.

0
BlackStar
1 месяц назад
  • 1
    el-lable465 el-lable.ru
    <li class="info_item">
      <div>Поддерживаемые страны:</div>
      <div>
    	<?php
    	  $countries = acf_get_field('supported_countries');
    	  if( $countries ): ?>
    	  <ul>
    		<?php foreach( $countries['choices'] as $value => $label ): ?>
    		<li>
    		  <?php echo $value; ?> :
    		  <?php echo $label; ?>
    		</li>
    		<?php endforeach; ?>
    	  </ul>
    	  <?php endif; ?>
      </div>
    </li>
    BlackStar 1 месяц назад

    Спасибо, а можешь ещё подсказать, а если необходимо выводить данные поля в цикле в зависимости от id поста, то как быть ? Я просто думал, что там $countries = acf_get_field('supported_countries', $id); параметр номер id принимает, но что-то не работает(

    el-lable 1 месяц назад

    acf_get_field - берет само поле как оно есть в админке полей, оно не привязано ни к каким страницам, постам или что там у вас выставленно. Поэтому у этой функции нет второго параметра, есть только имя поля.

    el-lable 1 месяц назад

    может вам тогда подойдет функция https://www.advancedcustomfields.com/resources/get_field_object/

    el-lable 1 месяц назад

    и да, забыл написать, при разделении в том поле двоеточие с пробелами с обоих сторон а не как у вас только справа

    BlackStar 1 месяц назад

    Спасибо, у меня только проблема -

    $countries['choices'] 

    Не отрабатывает. Выводит сразу все пункты, выбраны они или нет

    Комментировать
На вопросы могут отвечать только зарегистрированные пользователи. Вход . Регистрация