Как вы можете видеть на картинке, у меня есть корзина с двумя продуктами.
Каждый из продуктов имеет несколько дополнений. «Аддон № 1» стоит 20 франков.
Если покупатель выбирает 3 продукта «тестовый продукт 1» и добавляет 2 «аддона №1», я хочу сначала вычислить количество и , а затем добавить стоимостьаддоны .
Например, на изображении для первого товара в корзине 120 * 3 = 360, а затем 2 дополнения * 20 = 40, я хочу, чтобы в Total было 400. ![enter image description here](https://i.stack.imgur.com/9Qb3R.jpg)
Я попробовал некоторые действия, такие как woocommerce_after_calculate_totals
, woocommerce_cart_item_subtotal
, woocommerce_cart_product_subtotal
, но даже если я получу желаемый результат, общая стоимость корзины будет неправильной, она не включаетаддоны. ![enter image description here](https://i.stack.imgur.com/ZZSnM.jpg)
function add_addons_to_total_price( $product_subtotal, $product, $quantity, $cart ) {
$subtotal_product_price = 0;
$product_price = $product->get_price();
$subtotal_product_price = $product_price * $quantity;
foreach( $cart->get_cart() as $key=>$value ) {
if( isset( $value['total_addons_price'] ) ) {
$subtotal_product_price += $value['total_addons_price'];
}
}
return ($subtotal_product_price) ? wc_price($subtotal_product_price) : $product_subtotal;
}
add_filter( 'woocommerce_cart_product_subtotal', 'add_addons_to_total_price', 10, 4 );
Есть ли у вас какие-либо идеи о том, как изменить общую стоимость каждого элемента в корзине и обновить общую стоимость корзины?