我设置不含税的产品时,我需要禁用显示不含税的价格 . 我在 price.php 文件中进行了修改,无需增值税即可添加价格 .
price.php
<p class="netto"> <?php echo woocommerce_price($product->get_price_excluding_tax()); ?> netto </p>
如果未设置价格,则“netto price”仍在产品页面中可见 .
我该如何禁用它?一些钩子?
<p class="netto"></p><?php ($product->get_price_excluding_tax() != null) ? echo woocommerce_price($product->get_price_excluding_tax()) : echo 0; ?> netto</p>
我还没有测试过,但我希望这样的事情应该有效:
add_action('woocommerce_before_shop_loop_item','custom_remove_loop_price'); function custom_remove_loop_price(){ global $product; if(!$product->price){ remove_action('woocommerce_after_shop_loop_item_title','woocommerce_template_loop_price',10); } }
第一个 woocommerce_price() 函数和 get_price_excluding_tax() 方法已弃用且过时...它们被 wc_price() 和 wc_get_price_excluding_tax() 函数替换 .
woocommerce_price()
get_price_excluding_tax()
wc_price()
wc_get_price_excluding_tax()
而不是覆盖woocommerce模板 loop/pride.php 您可以使用以下代码来实现您想要的这个钩住自定义函数:
loop/pride.php
add_action( 'woocommerce_after_shop_loop_item_title', 'conditionally_add_price_excluding_vat '); function conditionally_add_price_excluding_vat(){ global $product; if( $product->get_tax_status() != 'taxable' ){ $price_excl_vat = wc_get_price_excluding_tax($product); echo'<p class="netto">'.wc_price($price_excl_vat).' '. __('netto').'</p>'; } }
代码放在活动子主题(或主题)的function.php文件中,或者放在任何插件文件中 .
经过测试和工作 .
当产品存档页面上的产品“Tax status”设置为“None”时,将隐藏额外的“netto”价格 .
3 回答
我还没有测试过,但我希望这样的事情应该有效:
第一个
woocommerce_price()
函数和get_price_excluding_tax()
方法已弃用且过时...它们被wc_price()
和wc_get_price_excluding_tax()
函数替换 .而不是覆盖woocommerce模板
loop/pride.php
您可以使用以下代码来实现您想要的这个钩住自定义函数:代码放在活动子主题(或主题)的function.php文件中,或者放在任何插件文件中 .
经过测试和工作 .