woocomerce根据一种产品的数量计算最终价格

时间:2017-08-11 08:15:47

标签: php wordpress woocommerce hook-woocommerce woocommerce-theming

我目前正在建立一家woocommerce商店。基本上这就是我想要实现的目标。

“这是一个他们想要水果篮子(包装)的水果店,顾客选择他想要的水果(例如3个项目),然后他/她选择具有所需数量的篮子(3个不同的1个)网站中的篮子。)

总费用必须计算如下:{sum(水果a +水果b +水果c +篮子价格)*(所选篮子的数量)。

例如:苹果价格3美元,香蕉价格3美元,选择篮子价格1美元,篮子数量是:200。总成本=(3 + 3 + 1)* 200。

所以这只是一个例子,因为我想设置定价。

任何想法如何实现,我尝试了woocommerce推荐的多个插件,但没有他们做我想要的。

非常感谢您的帮助......

我编写以下代码(在此代码篮产品ID为24)。 但问题是当我设置为ex:10 for basket。正好在篮子行末端的购物车页面篮子线末端的总成本将是这样的:篮子数量*篮子成本为1美元所以这是10美元。

总价是(巴巴巴3美元+苹果3美元+篮子10美元)*篮子数量。

正确的计算是(3 + 3 + 1)* 10.

add_action( 'woocommerce_calculate_totals', 'action_cart_calculate_totals', 10, 1 );

function action_cart_calculate_totals( $cart_object ) {

$targeted_id = 24;

foreach ( WC()->cart->get_cart() as $cart_item ) { 
    if($cart_item['product_id'] == $targeted_id ){
        $qty =  $cart_item['quantity'];
        break; // stop the loop if product is found
    }
}       

    if ( is_admin() && ! defined( 'DOING_AJAX' ) )
        return;

    if ( !WC()->cart->is_empty() ):

        $cart_object->subtotal *= $qty;

        $cart_object->total *= $qty;


        $cart_object->cart_contents_total *= $qty;

    endif;
}

1 个答案:

答案 0 :(得分:0)

您的问题似乎属于Custom price calculation类别。

有些wordpress插件可供您完成工作,例如WooPrice CalculatorBooster for WooCommerce