2014-08-27 187 views
0
add_action('woocommerce_before_calculate_totals', 'add_custom_price'); 
function add_custom_price($cart_object) { 
    $custom_price = 10; // This will be custom price 
    foreach ($cart_object->cart_contents as $key => $value) { 
     $value['data']->price = $custom_price; 
    } 
} 

上面的代码给出了购物车中所有产品的自定义价格10,但我一直试图通过我创建的自定义字段获得自定义价格,该字段被命名为' rrp_price'用于不同的产品。我一直坚持把自定义的价格放进购物车,然后退房。那么任何人都可以帮助我?我也试过:Woocommerce Wordpress自定义定价字段

$custom_price = "<?php echo get_post_meta(get_the_ID(), 'rrp_price', true); ?>"; 

但它没有工作。

回答

0

您可以通过过滤价格修改设置为rrp_price的项目的所有价格。

function so_25524453_get_price($price, $product){ 
    if($rrp = get_post_meta($product->id, 'rrp_price', true)){ 
     $price = $rrp; 
    } 
    return $price; 
} 
add_filter('woocommerce_get_price', 'so_25524453_get_price', 10, 2);