Woocommerce WooC中的自定义项目价格变化

Woocommerce WooC中的自定义项目价格变化,woocommerce,hook-woocommerce,Woocommerce,Hook Woocommerce,在WooC中有商品行的自定义价格情况。 现在,通过以下方式找到更改订单编辑小计的解决方案: add_action( 'woocommerce_update_order_item', function ($_item_id, $_item, $_order_id) { if( $arr_item_meta = wc_get_order_item_meta($_item_id) ) { $prc = wooc_item1_price( $arr_item_meta["

在WooC中有商品行的自定义价格情况。 现在,通过以下方式找到更改订单编辑小计的解决方案:

add_action( 'woocommerce_update_order_item', function ($_item_id, $_item, $_order_id) {
    if( $arr_item_meta = wc_get_order_item_meta($_item_id) )
    {
        $prc = wooc_item1_price( $arr_item_meta["_a1"][0], $arr_item_meta["_a2"][0], $arr_item_meta["_a3"][0], $_item->get_product()->get_id() );
      $_item -> set_total( $prc );
            $_item -> set_subtotal( $prc );
            $_item -> save();
    } 
  },10,3);
这仅适用于“编辑”。即,在更新时-它设置了我使用功能制定的价格

wooc_项目1_价格,包含购物车中的少量参数(每种产品的数量)


问题是:

如何在产品刚刚添加到购物车后制作相同的产品。 因此,在任何编辑/更新程序之前,新的小计+总计将按顺序提供。 请帮帮我

add_action ('woocommerce_calculate_totals', function( $_cart )
{
    foreach ($_cart->cart_contents as $cart_key => $cart_item) 
    {
    $prc = function_to_make_item_custom_price(
        $_cart->cart_contents[$cart_key]["_param1"],
        $_cart->cart_contents[$cart_key]["_param2"],
        $_cart->cart_contents[$cart_key]["_param3"],
        $_cart->cart_contents[$cart_key]["product_id"]
      );

        $_cart->cart_contents[$cart_key]['line_subtotal'] = $prc;
        $_cart->cart_contents[$cart_key]['line_total']    = $prc;
    }             
}, 10,1);
这是正确的方法-在将商品添加到购物车时定价。 需要具有价格函数功能,以便根据参数制定商品价格。在我的例子中,这是产品零件的数量(成人、儿童和婴儿参数1、参数2、参数3)


其简单的想法是,还需要重税,优惠券

请仔细查看:它设置了我使用函数wooc\u item1\u price制作的价格,其中一个IDE是使用woocommerce\u计算合计