无论税率如何,都保持不变的Woocommerce价格 - B2C

时间:2017-12-26 20:55:23

标签: php wordpress filter woocommerce

注意 - 我是新的,所以请善待。如果有什么不清楚请告诉我,所以我可以改进我的提问!

作为一个住在欧洲并向最终消费者销售产品的人,以下问题非常重要,在我看来,这个问题严重不足。 关于这个问题有很多话题。在下面的一个@MikeJolley(wocommerce github存储库的所有者)也参与(github.com issues/4131)并链接到网站 - How Taxes Work in WooCommerce,您可以在其中找到以下过滤器以保持价格不变,无论税率

add_filter( 'woocommerce_adjust_non_base_location_prices', '__return_false' )

通过使用过滤器,您可以实现以下目标:

示例1:从GB(以20%的税率)出售给德国。该产品的价格为9.99,含税。基于GB的卖家不需要为德国的实物商品征税。

价格= 9.99(相同) 税= 0(不收税 德国人将支付9.99的产品,与GB人一样。

示例2:让我们采用相同的上述示例,但考虑一个数字商品,税率适用19%。

价格= 9.99(相同) 税= 9.99 / 1.19 = 8.39(略低于GB) 德国人将再次支付9.99

问题:

几个星期后,我把过滤器放在我的functions.php中并解决了问题,不幸的是在最后一次Woocommerce更新之后,所提到的过滤器触发了以下调用 - 在无限循环中执行 - 一次又一次(参见firebug network)标签)。

https://testsite.com/online-shop/?wc-ajax=get_refreshed_fragments

enter image description here

我的要求

知道如何解决这个问题 - 还是以其他方式保持价格不变?我对重载或付费的插件解决方案不感兴趣,因为它减慢了我的网站速度。非常感谢你

修改

经过一些研究后,我发现了以下内容:

Refresh fragments infinite loop #10940Fix for #10940 - wc_cart_hash 似乎还有一个仍未完全解决的woocommerce错误。我关上了我的其他窗户,问题就消失了。多么浪费时间......

1 个答案:

答案 0 :(得分:0)

经过一番研究后我发现了问题。这是一个woocommerce核心问题 - 请看Refresh fragments infinite loop #10940Fix for #10940 - wc_cart_hash

wc_cart_hash用作localStorage的密钥 适用于所有WooCommerce网站。如果你要加载你的 在同一浏览器中的两个不同站点的购物车, 两个WooCommerce页面将争夺这个密钥 并尝试在localStorage中设置此键

此提交会将网站的ajax网址添加到wc_cart_hash之前 localStorage中的密钥名称,为每个密钥提供唯一密钥 WooCommerce网站。这结束了对密钥的争用。

似乎woocommerce错误没有完全解决......

我关闭了其他窗户,问题就消失了。希望这可以帮助其他人解决同样的问题。

<强>更新

如果您打开一个新的标签页,您可以在后台查看另一个woocommerce主题的实时预览(在外观 - 主题下)...在我的情况下,我检查了之前主题的一些更改。