post_meta get_the_ID Не работает в WordPress - PullRequest
0 голосов
/ 29 января 2020

Команды get_post_meta (get_the_ID (), 'add_price', true); не работают над этой функцией моего WordPress сайта:

function misha_recalculate_price( $cart_object ) {
    var_dump(get_post_type($post_ID));

    if ( is_admin() && ! defined( 'DOING_AJAX' ) )
            return;
            foreach ( $cart_object->get_cart() as $hash => $value ) {
                 $nowprice = $value['data']->get_price(); 
                 $addprice =  get_post_meta(get_the_ID(), 'add_price', true);
                 $newprice = $nowprice+$addprice ;
                 $value['data']->set_price( $newprice );         
            }           
}
add_action( 'woocommerce_before_calculate_totals', 'misha_recalculate_price' );

Ответы [ 2 ]

1 голос
/ 29 января 2020

Вы можете попробовать это таким образом?

function misha_recalculate_price( $cart_object ) {
    if ( is_admin() && ! defined( 'DOING_AJAX' ) ) {
        return;

        foreach ( $cart_object->get_cart() as $hash => $value ) {
            $nowprice = $value['data']->get_price(); 
            $addprice =  get_post_meta($value['data']->get_id(), 'add_price', true);
            $newprice = $nowprice + $addprice;
            $value['data']->set_price( $newprice );         
        }
    }       
}
add_action( 'woocommerce_before_calculate_totals', 'misha_recalculate_price', 10, 1 );
0 голосов
/ 29 января 2020
function misha_recalculate_price( $cart_object ) {

    if ( is_admin() && ! defined( 'DOING_AJAX' ) )
            return;
            foreach ( $cart_object->get_cart() as $hash => $value ) {
                 $nowprice = $value['data']->get_price(); 
                $addprice = get_post_meta($value['data']->get_id(), 'cost_price', true);
                 $newprice = $nowprice+$addprice ;
                 $value['data']->set_price( $newprice );         
            }           
}
add_action( 'woocommerce_before_calculate_totals', 'misha_recalculate_price', 10, 1 );
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...