Carro de WooCommerce – Variable de precio dynamic pasa al gancho de precio personalizado

Obtengo el precio personalizado dynamic en una variable que quiero pasar a la función enganchada en woocommerce_before_calculate_totals hook en el carro. Pero no está funcionando.

Este es mi código:

$add=200; //I want to pass this variable in add_action hook add_action( 'woocommerce_before_calculate_totals', 'add_custom_total_price'); function add_custom_total_price($cart_object) { global $woocommerce; $custom_price =$add; // This is my custom price foreach ( $cart_object->cart_contents as $key => $value ) { $value['data']->price = $custom_price; } } 

¿Cómo puedo conseguir esto?

Gracias

Para hacerlo funcionar, solo necesita definir las variables $custom_price como globales en su función, de esta manera:

 $custom_price = 200; add_action( 'woocommerce_before_calculate_totals', 'add_custom_item_price', 10, 1 ); function add_custom_item_price( $cart_object ) { if ( is_admin() && ! defined( 'DOING_AJAX' ) ) return; global $custom_price; foreach ( $cart_object->get_cart() as $item_values ) { $item_values['data']->price = $custom_price; } } 

Este código está probado y en funcionamiento (para woocommerce versiones 2.5+ y 2.6+) .

Naturalmente, este código va en el archivo function.php de su tema o tema hijo activo.

Para agregar el precio en su carrito de woocommerce antes de calcular el total,

  add_action( 'woocommerce_before_calculate_totals', 'add_custom_total_price'); function add_custom_total_price($cart_object) { global $woocommerce,$add,$custom_price; $add=200;//Dynamic Price variable $custom_price =$add;//Dynamic Price variable pass to custom price foreach ( $cart_object->cart_contents as $key => $value ) { $value['data']->price = $custom_price; } }