Обзор
Возвращает параметры (массив) конкретного подполя цикла have_rows().
Значение поля также будет загружено, если не указано иное.
История изменений
- Добавлено в v4.0
Параметры
get_sub_field_object($selector, [$format_value], [$load_value]);
- $selector (строка) (обязательное) Имя или ключ поля
- $format_value (логический) Использовать ли логическое форматирование. По-умолчанию true.
- $load_value (логический) Загружать ли значение поля. По-умолчанию true.
Возвращает
Эта функция возвращает массив представленный ниже. Обратите внимание, что каждое поле содержит уникальные настройки.
array(
'ID' => 0,
'key' => '',
'label' => '',
'name' => '',
'prefix' => '',
'type' => 'text',
'value' => null,
'menu_order' => 0,
'instructions' => '',
'required' => 0,
'id' => '',
'class' => '',
'conditional_logic' => 0,
'parent' => 0,
'wrapper' => array(
'width' => '',
'class' => '',
'id' => ''
)
);
Использование
Функция get_sub_field_object() работает похоже на get_sub_field(). И обязательно должна использоваться в цикле have_rows(). Ниже приведен пример того, как найти объект подполя для поля «выбор» (под именем«select» в этом примере) из повторителя(в этом примере называется «repeater»).
<?php if( have_rows('repeater') ): ?>
<?php while( have_rows('repeater') ): the_row(); ?>
<?php
// переменные
$select = get_sub_field_object('select');
$value = $select['value'];
?>
<ul>
<?php foreach( $select['choices'] as $k => $v ): ?>
<li>
<?php if( $k == $value ): ?>
<span class="selected">Selected!</span>
<?php endif; ?>
<?php echo $v; ?>
</li>
<?php endforeach; ?>
</ul>
<?php endwhile; ?>
<?php endif; ?>
Похожие
- Функция: has_sub_field()
- Функция: get_sub_field()