Как добавить дополнительные meta_values ​​ACF в WordPress при добавлении новой пользовательской записи или обновлении старой пользовательской публикации? - PullRequest
0 голосов
/ 04 апреля 2020

Я искал повсюду это, но не смог найти точное решение для моего ответа. Вот весь сценарий, в котором я хочу, чтобы он работал из-за требований моего проекта:

  1. Существует пользовательский тип записи: Say Books.
  2. Существует два дополнительных настраиваемых поля. [создано с использованием ACF] в этом пользовательском типе записи: а именно Автор [автор], страницы [страницы]
  3. Я хочу добавить дополнительное значение meta_ ACF при первом создании сообщения и обновить это значение при обновлении сообщения .
  4. Я попытался поэкспериментировать с save_post_books, transition_post_status, pre_post_update, но не смог выяснить правильные зацепки для этих двух указанных c условий.

Вот примеры фрагментов кода Я пытаюсь заставить это работать:

add_action( 'pre_post_update', 'intercept_publishing', 10, 2 );
function intercept_publishing( $post_ID, $data ) {

    if ( ! is_admin() ) {
        return;
    }

    if ( 'books' !== get_post_type( $post_ID ) ) {
        return;
    }

    var_dump( $post_ID );
    var_dump( $data );
    wp_die();
}

add_action( 'transition_post_status', 'intercept_publishing_books', 10, 2 );
function intercept_publishing_books( $new_status, $old_status, $post ) {
    if ( $post->post_status !== 'new' || $post->post_status !== 'publish' ) {
        return;
    }
    if ( ( $new == 'publish' ) && ( $old != 'publish' ) && ( $post->post_type == 'books' ) ) {
        var_dump( $new_status );
        var_dump( $old_status );
        var_dump( $post );
        wp_die();
    } else {
        return;
    }

}

Любая помощь будет оценена.

...