在我的Wordpress电子商务网站上,我使用WP酒店预订,这是一个用于预订酒店房间的插件。签出过程使用WooCommerce完成。
问题:我们有不同的房间,有不同的pricing.For示例:
对2500元以下的房间,税率定为12%,2500间以上的房间,税率为18%。
由于我使用的是WP酒店预订这个定制产品(房间管理),我无法使用额外税类选项在woocommerce中设置不同的税种。
我需要你的帮助,写一个函数,以检查房间价值,然后决定需要为给定的房间设置什么税。
谢谢
发布于 2017-07-07 06:56:39
这是一件容易理解的事情。
( 1°)您需要在WooCommerce税收设置中创建2个新的税类。在本例中,我将税务类命名为"Tax 12“和"Tax 18".然后,您必须为每个用户设置不同的12%和18%.百分比。
( 2°)现在有一个自定义函数挂在woocommerce_before_calculate_totals动作钩子中,它将根据产品价格应用一个税类。我不使用税务类名,而是用小写和空格用连字符替换的赋税类段塞。
这是密码:
add_action( 'woocommerce_before_calculate_totals', 'change_cart_items_prices', 10, 1 );
function change_cart_items_prices( $cart ) {
if ( is_admin() && ! defined( 'DOING_AJAX' ) )
return;
if ( did_action( 'woocommerce_before_calculate_totals' ) >= 2 )
return;
foreach ( $cart->get_cart() as $cart_item ) {
// get product price
$price = $cart_item['data']->get_price();
// Set conditionaly based on price the tax class
if ( $price < 2500 )
$cart_item['data']->set_tax_class( 'tax-12' ); // below 2500
if ( $price >= 2500 )
$cart_item['data']->set_tax_class( 'tax-18' ); // Above 2500
}
}代码在您的活动子主题(或主题)的function.php文件中,或者在任何插件文件中。
此代码已在WooCommerce版本3+上进行测试和工作。
https://stackoverflow.com/questions/44950932
复制相似问题