acf_form_head()

Описание

Используется для обработки, проверки и сохранения данных отправленной формы, созданной функцией acf_form(). Также функция подключает все скрипты и стили, связанные с ACF, чтобы форма отображалась корректно.

Эту функцию необходимо разместить до вывода любого HTML-кода, предпочтительно перед функцией get_header() в файле темы.

Параметры

acf_form_head();

Пример

В этом примере показано базовое использование acf_form() для редактирования текущей просматриваемой записи.

<?php acf_form_head(); ?>
<?php get_header(); ?>

    <div id="primary" class="content-area">
        <div id="content" class="site-content" role="main">
            <?php acf_form(); ?>
        </div>
    </div>

<?php get_sidebar(); ?>
<?php get_footer(); ?>

Действия и фильтры

Для настройки процесса отправки доступны следующие действия и фильтры.

  • acf/pre_submit_form
    Этот фильтр срабатывает после отправки формы и до сохранения каких-либо данных.
    Используйте его, чтобы изменить массив $form до сохранения данных $_POST.

    add_filter('acf/pre_submit_form', 'my_acf_pre_submit_form', 10, 1);
    function my_acf_pre_submit_form( $form ) {
        // Создайте запись, используя $form['new_post'].
        // Измените $form['redirect'].
        return $form;
    }
  • acf/pre_save_post
    Этот фильтр срабатывает после фильтра acf/pre_submit_form и до сохранения каких-либо данных.
    Используйте его, чтобы изменить значение $post_id, используемое для сохранения данных $_POST.

    add_filter('acf/pre_save_post', 'my_acf_pre_save_post', 10, 2);
    function my_acf_pre_save_post( $post_id, $form ) {
        // Создайте запись, используя $form, и обновите $post_id.
        return $post_id;
    }
  • acf/save_post
    Это действие срабатывает, когда ACF сохраняет данные $_POST.
    Дополнительную информацию см. в руководстве acf/save_post.

    add_action('acf/save_post', 'my_acf_save_post', 20);
    function my_acf_save_post( $post_id ) {
    
        // Получить новое значение.
        $value = get_field('my_field', $post_id);
    
        // Выполнить действие.
    }   
  • acf/submit_form
    Это действие срабатывает после сохранения данных $_POST.
    Используйте его для выполнения пользовательской логики до применения настройки return, которая перенаправляет браузер.

    add_action('acf/submit_form', 'my_acf_submit_form', 10, 2);
    function my_acf_submit_form( $form, $post_id ) {
    
        // Получить новое значение.
        $value = get_field('my_field', $post_id);
    
        // Перенаправить.
        wp_redirect( 'http://www.website.com/' . $value );
        exit;
    }

История изменений

  • acf/pre_submit_form добавлен в версии 5.5.10
  • acf/submit_form добавлен в версии 5.5.10
  • acf/pre_save_post добавлен в версии 4.1.6

Обновлено: 30.09.2026