acf_form_head()
Используется для обработки, валидации и сохранения данных отправленных формой созданной функцией acf_form(). Также функция ставит в очередь скрипты и стили формы для её правильного отображения.
Функцию нужно вызывать до вывода какого-либо HTML-кода. Рекомендуется вызывать до get_header().
Хуков нет.
Возвращает
null
.
Использование
acf_form_head();
Примеры
#1 Пример интеграции в шаблон
Этот пример демонстрирует работу базовой функции 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 ) { // Create post using $form['new_post']. // Modify $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 ) { // Create post using $form and update $post_id. return $post_id; }
- acf/save_post
Срабатывает после сохранения ACF данных $_POST.
add_action( 'acf/save_post', 'my_acf_save_post', 20 ); function my_acf_save_post( $post_id ) { // Get new value. $value = get_field('my_field', $post_id); // Do something. }
- acf/submit_form
Срабатывает после того как данные $_POST были сохранены. Используйте это событие для выполнения настраиваемой логики перед использованием параметра возврата для перенаправления браузера.
add_action( 'acf/submit_form', 'my_acf_submit_form', 10, 2 ); function my_acf_submit_form( $form, $post_id ) { // Get new value. $value = get_field('my_field', $post_id); // Redirect. wp_redirect( 'http://www.website.com/' . $value ); exit; }
Код acf_form_head() acf form head ACF 6.0.4
function acf_form_head() { acf()->form_front->enqueue_form(); }