Как получить значение произвольного поля (ACF плагин) во время сохранения поста?

Для хука:
add_action( 'save_post', 'my_save_post', 10, 2 );

Нужно получить значение 1 из произвольных полей - id на стороннем ресурсе (далее будет обращение к api этого ресурса и на основе полученных данных запишутся значения двух других произвольных полей).

Функция обращающаяся к api работает, если жестко указать в ней id.
Но я не могу получить значение поля, чтобы брать id из заполненного поля...

Вот так, например, можно получить указанный в сохраняемом посте заголовок:
function my_save_post ( $post_ID, $post) {
$post->post_title
// some code
}


Вот что происходит при сохранении поста:
3877d247efa642269eb6133d6e8dd118.PNG

Далее в Form Data есть строки, относящиеся к произвольным полям:
fields[field_5423b0bb92209]:
fields[field_5423aff492207]: ТУТ ID
fields[field_5423b04192208]:
fields[field_5424dd92c4f3d]:


Но обратиться, по аналогии с заголовоком поста, к полю fields[field_5423aff492207] не получается.

Это:
$id = $post->fields['field_5423aff492207'];
вызывает ошибку Warning: Illegal string offset (получается что у нас не массив, а строка?).

Как получить это значение?
  • Вопрос задан
  • 2945 просмотров
Решения вопроса 2
andrhohlov
@andrhohlov Автор вопроса
function savePost() {
    global $post;
    $fieldVaue= get_field($field_name, $post->ID);
    // do something
}
add_action( 'acf/save_post', 'savePost');
Ответ написан
Комментировать
maxxannik
@maxxannik
Сайты на WordPress + Интернет магазины WooCommerce
Вешайтесь на другой хук. Например added_post_meta.
И ключ используйте тот что в acf вбили. А не эту кракозябру.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы