Описание
Срабатывает при сохранении отправленных данных $_POST.
Это действие позволяет подключиться до или после сохранения данных $_POST, что удобно для выполнения дополнительных действий при обновлении записи или другого объекта WP.
Параметры
do_action( 'acf/save_post', $post_id );$post_id(int|string) ID редактируемой записи.
История изменений
- В версии 5.0.0 пространство имён изменено с
$_POST['fields']на$_POST['acf'] - Добавлено в версии 4.0.0
Примеры
Применение после сохранения
В этом примере показано, как выполнить дополнительные действия после того, как ACF сохранил данные $_POST.
functions.php
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 ) {
// Выполнить действие...
}
}Применение до сохранения
В этом примере показано, как выполнить дополнительные действия до того, как ACF сохранил данные $_POST, используя приоритет меньше 10.
functions.php
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']) ) {
// Выполнить действие.
}
}Примечания
Параметры
В отличие от действия WordPress save_post, это действие не содержит параметры $post и $updated. Если вам нужен доступ к этим параметрам, рассмотрите возможность использования другого действия.
Обновлено: 30.09.2026