acf/save_post
Спрацьовує за збереження відправлених $_POST даних форми.
Ця подія дозволяє зробити щось до або після збереження $_POST даних форми, створеної функцією acf_form() . Використовуючи цей хук, можна додати функціональність формі.
На відміну від події WordPress save_post , ця подія не містить параметра $updated . Якщо цей параметр потрібен, шукайте інший хук.
Використання
add_action( 'acf/save_post', 'wp_kama_acf_save_post_action' ); /** * Function for `acf/save_post` action-hook. * * @param $post_id * * @return void */ function wp_kama_acf_save_post_action( $post_id ){ // action... }
-
$post_id
(число/рядок) - ID змінного посту.
Приклади
#1 Робимо що потрібно після збереження даних форми
Приклад демонструє, як додати функції після того, як ACF зберіг $_POST дані форми.
add_action( 'acf/save_post', 'my_acf_save_post' ); function my_acf_save_post( $post_id ) { // Отримати нові збережені значення. $ values = get_fields( $post_id ); // Перевірити нове значення спеціального поля. $hero_image = get_field( 'hero_image', $post_id ); if ($ hero_image) { // Do something... } }
#2 Робимо, що потрібно до збереження даних форми
Приклад демонструє, як додати функції після того, як ACF зберіг $_POST дані форми. Для цього вкажемо пріоритет менше ніж 10.
add_action( 'acf/save_post', 'my_acf_save_post', 5); function my_acf_save_post( $post_id ) { // Отримати попередні значення. $prev_values = get_fields($post_id); // Отримати надіслані значення. $values = $_POST['acf']; // Перевірити чи змінили спеціальні значення. if( isset($_POST['acf']['field_abc123']) ) { // Do something. } }
Де викликається хук
acf/save_post
acf/includes/acf-form-functions.php 141
do_action( 'acf/save_post', $post_id );
Де використовується хук в Advanced Custom Fields
acf/includes/acf-form-functions.php 168
add_action( 'acf/save_post', '_acf_do_save_post' );
acf/includes/media.php 26
add_action( 'acf/save_post', array( $this, 'save_files' ), 5, 1 );