Как обновить метаданные произвольной таксономии с помощью функции update_field() ACF или других функций WordPress
Я пытаюсь обновить значение метаполя Advanced Custom Fields, связанное с термином произвольной таксономии
// Обновляем термин таксономии
$term_status = wp_update_term( $rate_id, 'rate', $term_data );
// Получаем ID термина
$term_id = $term_status['term_taxonomy_id'];
// Пытаемся обновить поле ACF
update_field( 'field_56829855eebc9', $rate_daily, $term_id );
Однако поле не обновляется. Я также пробовал использовать имя поля вместо ключа поля.

Я разобрался, как это сделать..
Синтаксис функции update_field()
:
update_field($field_key, $value, $post_id)
МОЯ ОШИБКА:
Я использовал неправильный параметр для $post_id
, думая, что это ID термина таксономии.
ПРАВИЛЬНОЕ ИСПОЛЬЗОВАНИЕ: вместо ID термина ($term_id
в моём вопросе) нужно использовать строку с названием таксономии и добавленным к ней ID термина.
То есть $post_id
= $taxonomy.'_'.$term_id
Например: если ваша пользовательская таксономия называется foo
, а ID термина 123
Тогда: $post_id = foo_123
Надеюсь, это кому-то поможет.
Это мой первый вопрос/ответ здесь.

Большое спасибо! Хочу также указать на опечатку. Вы забыли подчеркивание: должно быть $term_name . '_' . $term_id

примечание: это должно быть название таксономии, за которым следует идентификатор термина

Только это сработало у меня:
update_term_meta($term_id, $field['name'], $value);
В моем случае у меня есть таксономия "author" с пользовательским полем "institution", поэтому я сделал:
$my_author_taxonomy = get_term_by( "name", $author_taxonomy_name, 'author' );
update_term_meta($my_author_taxonomy->term_id, "institution", $Institution);
Надеюсь, это поможет кому-то :)

Мне удалось успешно использовать wp_set_object_terms, как было предложено в официальной поддержке ACF.
