Описание
Регистрирует форму для использования с функцией acf_form(). Доступно множество настроек для изменения формы. Они задаются добавлением параметров в массив $settings (см. ниже).
Параметры
<?php acf_register_form( $settings ); ?>$settings
(String | Array) Массив настроек или «id» зарегистрированной формы.
id
(String) Уникальный идентификатор формы. По умолчанию — «acf-form».'id' => 'acf-form',post_id
(Integer | String) ID записи, используемый для определения отображаемых полей, источника загрузки данных и места сохранения данных. По умолчанию используется ID текущей записи. Также можно передать значение «new_post», чтобы при отправке формы создать новую запись.'post_id' => false,new_post
(Array) Если для указанного выше параметра задано значение «new_post», этот параметр используется для создания записи. Доступные параметры см. в документации wp_insert_post.'new_post' => false,field_groups
(Array) Массив ID или ключей групп полей, переопределяющий поля, отображаемые в этой форме.'field_groups' => false,fields
(Array) Массив ID или ключей полей, переопределяющий поля, отображаемые в этой форме.'fields' => false,post_title
(Boolean) Показывать ли текстовое поле заголовка записи. По умолчанию — false.'post_title' => false,post_content
(Boolean) Показывать ли поле редактора содержимого записи. По умолчанию — false.'post_content' => false,form
(Boolean) Создавать ли элементform. Полезно при добавлении формы в уже существующую форму. По умолчанию — true.'form' => true,form_attributes
(Array) Массив HTML-атрибутов элемента формы.'form_attributes' => array(),return
(String) URL, на который выполняется перенаправление после отправки формы. По умолчанию используется текущий URL с GET-параметром «?updated=true».
Специальная подстановка «%post_url%» будет заменена на постоянную ссылку записи.
Специальная подстановка «%post_id%» будет заменена на ID записи.'return' => '',html_before_fields
(String) Дополнительный HTML-код, добавляемый перед полями.'html_before_fields' => '',html_after_fields
(String) Дополнительный HTML-код, добавляемый после полей.'html_after_fields' => '',submit_value
(String) Текст, отображаемый на кнопке отправки.'submit_value' => __("Обновить", 'acf'),updated_message
(String) Сообщение, отображаемое над формой после перенаправления. Для отключения сообщения можно задать значение false.'updated_message' => __("Запись обновлена", 'acf'),label_placement
(String) Определяет расположение подписей полей относительно самих полей. По умолчанию — «top».
Доступные значения: «top» (над полями) или «left» (слева от полей).'label_placement' => 'top',instruction_placement
(String) Определяет расположение инструкций полей относительно самих полей. По умолчанию — «label».
Доступные значения: «label» (под подписями) или «field» (под полями).'instruction_placement' => 'label',field_el
(String) Определяет элемент, используемый для обёртки поля. По умолчанию — «div».
Доступные значения: «div», «tr», «td», «ul», «ol», «dl».'field_el' => 'div',uploader
(String) Определяет, использовать ли загрузчик WordPress или обычное поле ввода для полей изображений и файлов. По умолчанию — «wp».
Доступные значения: «wp» или «basic».'uploader' => 'wp',honeypot
(Boolean) Добавлять ли скрытое поле ввода для обнаружения отправки формы не человеком. По умолчанию — true.'honeypot' => true,html_updated_message
(String) HTML-код, используемый для вывода обновлённого сообщения.'html_updated_message' => '<div id="message" class="updated"><p>%s</p></div>',html_submit_button
(String) HTML-код, используемый для вывода кнопки отправки.'html_submit_button' => '<input type="submit" class="acf-button button button-primary button-large" value="%s" />',html_submit_spinner
(String) HTML-код, используемый для вывода индикатора загрузки кнопки отправки.'html_submit_spinner' => '<span class="acf-spinner"></span>',kses
(Boolean) Очищать ли все данные$_POSTс помощью функцииwp_kses_post(). По умолчанию — true.'kses' => true
История изменений
ksesдобавлен в версии 5.6.5.uploaderдобавлен в версии 5.2.4.honeypotдобавлен в версии 5.3.4.html_updated_message,html_submit_buttonиhtml_submit_spinnerдобавлены в версии 5.5.10.
Примеры
Базовое использование
В этом примере показано, как зарегистрировать форму в файле functions.php, а затем вывести её в шаблоне страницы.
functions.php
add_action('acf/init', 'my_acf_form_init');
function my_acf_form_init() {
// Проверяем существование функции.
if( function_exists('acf_register_form') ) {
// Регистрируем форму.
acf_register_form(array(
'id' => 'new-event',
'post_id' => 'new_post',
'new_post' => array(
'post_type' => 'event',
'post_status' => 'publish'
),
'post_title' => true,
'post_content'=> true,
));
}
}page-new-event.php
<?php acf_form_head(); ?>
<?php get_header(); ?>
<div id="primary" class="content-area">
<div id="content">
<?php acf_form('new-event'); ?>
</div><!-- #content -->
</div><!-- #primary -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>Обновлено: 30.09.2026