Управляйте пользовательскими полями (созданными в acf) в функции с помощью действия save_post (пользовательского типа записи) для обновления мета - PullRequest
0 голосов
/ 24 октября 2018

в пользовательском продукте типа woocommerce, у меня есть несколько пользовательских полей (созданных в ACF), и мне нужно принять меры при сохранении или обновлении сообщения, то есть я хочу добавить значения полейв атрибутах woocommerce.Это мой пример кода.У меня есть текстовое поле с именем: ISBN, и я пытаюсь передать значение в мета-атрибут:

//save_post_NAME_CPT
add_action('save_post_product', 'update_post_meta_subito' , 10, 3 ); 

function update_post_meta_subito( $post_id, $post, $update ) { 

        //get field isbn of current post
        $prova_termine = get_field( "isbn", $post_id );

         //add value field in global pa_autore attribute
        $term_taxonomy_ids = wp_set_object_terms( $post_id, $prova_termine, 'pa_autore', true );

        //add value field in current attribute post
        $data = Array(

        'pa_autore'=>Array( 
        'name'=>'pa_autore', 
        'value'=>$prova_termine, 
        'is_visible' => '1', 
        'is_variation' => '1',
        'is_taxonomy' => '1'
        ),

        );

        update_post_meta( $post_id, '_product_attributes',$data);
    }

Это не работает!это не передает никакой ценности!Но в этом случае все работает:

add_action('save_post_product', 'update_post_meta_subito' , 10, 3 ); 

function update_post_meta_subito( $post_id, $post, $update ) { 

        $prova_termine='ronaldo';

        $term_taxonomy_ids = wp_set_object_terms( $post_id, $prova_termine, 'pa_autore', true );

        $data = Array(

        'pa_autore'=>Array( 
        'name'=>'pa_autore', 
        'value'=>$prova_termine, 
        'is_visible' => '1', 
        'is_variation' => '1',
        'is_taxonomy' => '1'
        ),

        );

        update_post_meta( $post_id, '_product_attributes',$data);
    }

Итак, в первой функции не берется значение поля, где я не прав?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...