get_field_object()

Обзор

get_field_object() — Возвращает настройки (массив) для конкретного поля.

Значение поля также будет загружено, если не указано иное.

Параметры

get_field_object($selector, [$post_id], [$format_value], [$load_value]);
  • $selector (строка) (обязательное) Имя или ключ поля.
  • $post_id (смешанный) (необязательное) ID поста для которого сохранено поле. По умолчанию текущий пост.
  • $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'				=> ''
	)
);

Использование

<?php 

/*
*  Получить field object и вывести ярлык с его значением
*/

$field_name = "text_field";
$field = get_field_object($field_name);

echo $field['label'] . ': ' . $field['value'];

/*
*  Получить field object и вывести ярлык с его значением (используя имя или ключ поля для другого поста)
*/

$field_key = "field_5039a99716d1d";
$post_id = 123;
$field = get_field_object($field_key, $post_id);

echo $field['label'] . ': ' . $field['value'];

/*
*  Получить field object и создать выпадающий список
*/

$field_key = "field_5039a99716d1d";
$field = get_field_object($field_key);

if( $field )
{
	echo '<select name="' . $field['key'] . '">';
		foreach( $field['choices'] as $k => $v )
		{
			echo '<option value="' . $k . '">' . $v . '</option>';
		}
	echo '</select>';
}

?>