Обзор
Каждое поле содержит настройки, определяющие, где и как загружаются и сохраняются данные. Эти настройки можно изменить при редактировании группы полей. Все поля имеют общие настройки, но также предлагают уникальные настройки для каждого типа поля. Эти уникальные настройки описаны в документации о типе поля. Ниже показан скриншот доступных настроек текстового поля.
Общие настройки
| Название | Описание |
|---|---|
| Метка поля | Метка, отображаемая на странице редактирования при вводе значения. Обязательное поле. |
| Имя поля | Имя, используемое для сохранения и загрузки данных из базы данных. Имя должно состоять из одного слова; пробелы, символы подчёркивания и дефисы не допускаются. Обязательное поле. |
| Тип поля | Тип поля определяет доступные настройки, интерфейс ввода данных и значение, возвращаемое из базы данных. Обязательное поле. |
| Инструкции | Этот текст отображается на странице редактирования при вводе значения. |
| Обязательное | Для обязательных полей при сохранении записи выполняется проверка. Если попытаться сохранить пустое значение в обязательном поле, появится сообщение об ошибке. |
| Условная логика | После включения появятся дополнительные настройки для определения условий, при которых текущее поле должно отображаться или быть скрыто. Можно создавать группы условной логики, содержащие несколько утверждений с операторами «и» и «или». Доступные поля для переключения ограничены полями типов select, checkbox, true/false и radio. |
| Атрибуты обёртки | Эти атрибуты используются для создания DOM-элемента-обёртки поля. Добавлено в версии 5.0.0. |
Настройка
Помимо интерфейса «Редактировать группу полей», настройки поля можно изменить с помощью фильтра acf/load_field. Этот фильтр предоставляет массив настроек $field для каждого поля и позволяет изменить любые настройки.
В этом примере показано, как с помощью данного фильтра изменить конкретное поле с именем «events» и настроить параметры, недоступные в интерфейсе.
functions.php
<?php
function my_acf_load_field( $field ) {
// сделать обязательным
$field['required'] = true;
// настроить инструкции с иконкой
$field['instructions'] = '<i class="help" title="Инструкции здесь"></i>';
// настроить элемент-обёртку
$field['wrapper']['id'] = 'my-custom-id';
$field['wrapper']['data-jsify'] = '123';
$field['wrapper']['title'] = 'Текст здесь';
// вернуть
return $field;
}
add_filter('acf/load_field/name=event', 'my_acf_load_field');
?><!-- разметка поля event -->
<div id="my-custom-id" class="acf-field acf-field-text acf-field-5927ba4cecf19" data-jsify="123" title="Текст здесь">
<div class="acf-label">
<label for="menu-item-acf-6363-field_5927ba4cecf19">
Иконка <i class="help" title="Инструкции здесь"></i> <span class="acf-required">*</span>
</label>
</div>
<div class="acf-input">
...
</div>
</div>
Обновлено: 30.09.2026
