我不想更改总数。应该调整产品价格以保持总计。
例如,我的产品价格为35美元。 并且在我的woo税设置中添加了加利福尼亚销售税的标准税。 因此,购物车摘要看起来像是95825萨克拉曼多的地址。
Subtotal $35.00
Tax $2.89
Total $37.89
我要做的是调整产品价格,使总数保持35。像这样:
Subtotal $32.41
Tax $2.89
Total $35.00
现在,我使用以下代码,这些代码会更改产品价格,但是请在我的代码后求税,然后根据新产品价格计算新税。因此,现在总价少于35克的税,而且产品价格也会降低。
add_action( 'woocommerce_before_calculate_totals', 'custom_cart_items_prices', 10, 1 );
function custom_cart_items_prices( $cart ) {
if ( is_admin() && ! defined( 'DOING_AJAX' ) )
return;
if ( did_action( 'woocommerce_before_calculate_totals' ) >= 2 )
return;
// Loop Through cart items
foreach ( $cart->get_cart() as $cart_item_key => $cart_item ) {
$_product = apply_filters( 'woocommerce_cart_item_product', $cart_item['data'], $cart_item, $cart_item_key );
$price_without_tax = $_product->get_price_excluding_tax();
$price_with_tax = $_product->get_price_including_tax();
if($price_with_tax > 0){
$tax = $price_with_tax - $price_without_tax;
} else {
$tax = $cart_item['line_tax'];
}
$new_price = $price_without_tax - $tax;
$cart_item['data']->set_price( $new_price );
}
}
请帮助。谢谢。