在编程编辑WooCommerce应税运费时包含税费



我正在用下面的代码编程地编辑基于购物车总数的运费:

function wc_ninja_change_flat_rates_cost($rates, $package)
{
if (isset($rates['flat_rate:2'])) {
$cart_subtotal = WC()->cart->cart_contents_total;
if ($cart_subtotal >= 60) {
$rates['flat_rate:2']->cost = 0;
$rates['flat_rate:2']->label = __('Next Day - Free Delivery', 'woocommerce');
}
}
return $rates;
}
add_filter('woocommerce_package_rates', 'wc_ninja_change_flat_rates_cost', 10, 2);

一切正常,但仍在向订单中添加税款。

我如何使这些统一费率运输方法征税,同时改变其价值?

只需添加一行将税金设置为零。你可以这样做:

add_filter('woocommerce_package_rates', 'wc_ninja_change_flat_rates_cost', 10, 2);
function wc_ninja_change_flat_rates_cost( $rates, $package ) {
if ( isset( $rates['flat_rate:1'] ) ) {
$cart_subtotal = WC()->cart->cart_contents_total;
if ( $cart_subtotal >= 60 ) {
$rates['flat_rate:1']->cost = 0;
$rates['flat_rate:1']->label = __('Next Day - Free Delivery', 'woocommerce');
// set the tax amount to zero
$rates['flat_rate:1']->taxes = 0;
}
}
return $rates;
}

您可以在此答案中找到更多信息:根据WooCommerce中的购物车小计将特定的应税运输费率成本设置为0

代码已经过测试并正常工作。将其添加到活动主题的functions.php.

最新更新