Обзор
Создаёт новую группу полей ACF с полями и правилами расположения.
Описание
Создаёт в ACF новую группу полей с указанными заголовком, полями и правилами расположения. Группа полей автоматически включается для доступа AI.
Входные данные
{
"title": "Группа полей товаров",
"fields": [
{
"label": "Цена",
"name": "price",
"type": "number"
}
],
"location": [
[
{
"param": "post_type",
"operator": "==",
"value": "product"
}
]
]
}Обязательные свойства
title
(string) Заголовок группы полей.
fields
(array) Массив конфигураций полей. См. раздел Схема поля ниже.
location
(array) Правила расположения, определяющие, где отображается группа полей. См. раздел Схема расположения ниже.
Необязательные свойства
description
(string) Описание этой группы полей.
position
(string) Где отображать группу полей. По умолчанию: normal
– normal: под редактором содержимого
– side: на боковой панели
– acf_after_title: после заголовка записи
style
(string) Стиль группы полей. По умолчанию: default
– default: стандартный метабокс
– seamless: без стилей метабокса
label_placement
(string) Где размещать метки полей. По умолчанию: top
– top: над полем
– left: слева от поля
instruction_placement
(string) Где отображать инструкции для полей. По умолчанию: label
– label: под меткой
– field: под полем
hide_on_screen
(array) Элементы, которые нужно скрыть на экране редактирования. Доступные варианты: permalink, the_content, excerpt, custom_fields, discussion, comments, revisions, slug, author, format, page_attributes, featured_image, categories, tags, send-trackbacks
active
(boolean) Определяет, активна ли группа полей. По умолчанию: true
show_in_rest
(boolean) Определяет, будет ли группа доступна в REST API. По умолчанию: true
allow_ai_access
(boolean) Определяет, разрешён ли доступ AI. По умолчанию: true
ai_description
(string) Описание, которое помогает AI понять назначение этой группы полей.
Схема поля
Каждое поле в массиве fields поддерживает следующие свойства:
| Свойство | Тип | Обязательное | Описание |
|---|---|---|---|
label | string | Да | Понятная пользователю метка поля |
name | string | Да | Имя поля (используется в коде) |
type | string | Да | Тип поля (см. ниже) |
instructions | string | Нет | Вспомогательный текст для редакторов |
required | boolean | Нет | Определяет, является ли поле обязательным |
default_value | mixed | Нет | Значение по умолчанию |
placeholder | string | Нет | Текст заполнителя |
conditional_logic | array | Нет | Правила условного отображения |
Поддерживаемые типы полей
Основные: text, textarea, number, range, email, url, password
Содержимое: image, file, wysiwyg, oembed, gallery
Варианты выбора: select, checkbox, radio, button_group, true_false
Связи: link, post_object, page_link, relationship, taxonomy, user
Макет: group, repeater, flexible_content, clone
jQuery: google_map, date_picker, date_time_picker, time_picker, color_picker
Схема расположения
Правила расположения представлены вложенными массивами, отражающими логику AND/OR:
[
[
{ "param": "post_type", "operator": "==", "value": "product" }
]
]Внешний массив = группы OR, внутренний массив = условия AND внутри группы.
Параметры расположения
| Параметр | Описание |
|---|---|
post_type | Ярлык типа записи |
post_template | Файл шаблона страницы |
post_status | Статус записи |
post_format | Формат записи |
post_category | ID категории |
post_taxonomy | Термин таксономии |
page | ID конкретной страницы |
page_parent | ID родительской страницы |
page_type | Тип страницы (front, posts, top, parent, child) |
user_form | Форма пользователя (add, edit) |
user_role | Роль пользователя |
taxonomy | Экран таксономии |
options_page | Ярлык страницы настроек |
Операторы
==: равно!=: не равно
Результат
{
"success": true,
"field_group": {
"ID": 123,
"key": "group_abc123def456",
"title": "Группа полей товаров",
"fields": [...],
"location": [...],
"active": true,
"allow_ai_access": true
},
"field_group_id": 123,
"message": "Группа полей 'Группа полей товаров' успешно создана."
}Аннотации
| Аннотация | Значение |
|---|---|
readonly | false |
destructive | false |
idempotent | false |
Разрешения
Требуется возможность ACF (по умолчанию: manage_options).
Пример
Создание группы полей для типа записи Event:
{
"title": "Сведения о мероприятии",
"fields": [
{
"label": "Дата мероприятия",
"name": "event_date",
"type": "date_picker",
"required": true
},
{
"label": "Время мероприятия",
"name": "event_time",
"type": "time_picker"
},
{
"label": "Место проведения",
"name": "location",
"type": "text",
"instructions": "Введите название и адрес места проведения"
},
{
"label": "Стоимость билета",
"name": "ticket_price",
"type": "number",
"default_value": 0
}
],
"location": [
[
{
"param": "post_type",
"operator": "==",
"value": "event"
}
]
],
"ai_description": "Поля для расписания мероприятия и информации о билетах"
}Примечания
- Ключи полей генерируются автоматически, если не указаны.
- Ключ группы полей автоматически генерируется на основе уникального идентификатора.
- Вложенные поля (repeater, group, flexible content) рекурсивно поддерживают ту же схему поля.
- Недопустимые типы полей или конфигурации возвращают WP_Error.
Обновлено: 30.09.2026