在woocomerce中应用折扣优惠券后计算商品及服务税率

时间:2018-06-04 13:15:22

标签: wordpress wordpress-theming custom-wordpress-pages

来自客户的两种情况: 低于1050的产品的GST为5%,高于1050的产品为10%

场景1: 如果购物车小计是1500,税收计算是正确的,这是12%,但如果应用50%的折扣,购物车总数低于1050,那么税收应该是5%而不是12%

场景2: 如果产品价值为1800且明智的话,购物车中有3种产品,总计达到5200,税收为12%但是当应用50%的折扣时,每个产品价值都低于1050,因此税收应为5%< / p>

上面的示例需要两个不同的代码。

我使用以下代码根据产品价值征税,但是当应用折扣时,税率保持不变,

add_filter('woocommerce_before_calculate_totals','change_cart_items_prices',10,1); function change_cart_items_prices($ cart_object){

if ( is_admin() && ! defined( 'DOING_AJAX' ) )
    return;

foreach ( $cart_object->get_cart() as $cart_item ) {
    // get product price
    $price = $cart_item['data']->get_price();

    // Set conditionaly based on price the tax class
    if ( $price < 1050 )
        $cart_item['data']->set_tax_class( 'GST/IGST @ 5%' ); // below 1051
    if ( $price >= 1050 )
        $cart_item['data']->set_tax_class( 'GST @ 12%' ); // Above 1051
}

}

0 个答案:

没有答案