Woocommerce и wpcc

WooCommerce
Всех приветствую!
Сегодня рассматривается возможность добавления рассчета с калькулятора WPCC в счет стоимости товара, представленным плагином Woocommerce.



Собственно сам код, который добавляем в functions.php нашей темы:
add_action( 'init', 'add_product_to_cart' );
 function add_product_to_cart() {
 if ( ! is_admin() ) {
 global $woocommerce;
 $product_id = 1068; // id нашего товара
$found = false;
 //check if product already in cart
 if ( sizeof( $woocommerce->cart->get_cart() ) > 0 ) {
 foreach ( $woocommerce->cart->get_cart() as $cart_item_key => $values ) {
 $_product = $values['data'];
 if ( $_product->id == $product_id )
 $found = true;
 }
 // if product not found, add it
 if ( ! $found )
 $woocommerce->cart->add_to_cart( $product_id );
} else {
 // if no products in cart, add it
 $woocommerce->cart->add_to_cart( $product_id );
 }
 }
 }
 add_action( 'woocommerce_before_calculate_totals', 'add_custom_price' );

function add_custom_price( $cart_object ) {
 $custom_price = $_SESSION[wpcc_1][sum]; // тут цена которую вы насчитали в калькуляторе
$target_product_id = 1068; // здесь снова переменная из скрытого поля id товара
foreach ( $cart_object->cart_contents as $key => $value ) {
 if ( $value['product_id'] == $target_product_id ) {
 $value['data']->price = $custom_price;
 }
 }
 }

Действует данный код на один товар в данной ситуации, в общем от этого кода можно уже оттолкнуться.


Оставить комментарий