如何在 WooCommerce 中为正常价格和促销价格添加后缀?
Posted
技术标签:
【中文标题】如何在 WooCommerce 中为正常价格和促销价格添加后缀?【英文标题】:How to add suffix to both regular price and on sale price in WooCommerce? 【发布时间】:2021-06-19 06:22:01 【问题描述】:我想在 WooCommerce 中的销售价格和正常价格之后添加 ,-。 我现在使用的功能是:
// Add ,- after price
add_filter( 'woocommerce_get_price_html', 'njengah_text_after_price' );
function njengah_text_after_price($price)
$text_to_add_after_price = ',-'; //change text in bracket to your preferred text
return $price . $text_to_add_after_price;
这是有效的,但它只在 WooCommerce 中的销售价格之后添加。标准价后也要加上。
这是它现在添加的 HTML:
<span class="price">
<del>
<span class="woocommerce-Price-amount amount">
<bdi>
<span class="woocommerce-Price-currencySymbol">€</span>
4.326
</bdi>
</span>
</del>
<ins>
<span class="woocommerce-Price-amount amount">
<bdi>
<span class="woocommerce-Price-currencySymbol">€</span>
2.294
</bdi>
</span>
</ins>
,-
</span>
感谢您的宝贵时间!
【问题讨论】:
尝试过滤 wc_price 而不是 woocommerce_get_price_html 【参考方案1】:默认情况下,价格后缀添加在<ins>
(以防产品打折)元素之后,因此它只显示一次。
如果您想以正常价格和促销价格显示后缀,您将需要使用钩子过滤器:
woocommerce_get_price_suffix
设置价格后缀并更新woocommerce_price_display_suffix
选项
woocommerce_format_sale_price
更改特价格式
所以:
// adds the suffix to the price
add_filter( 'woocommerce_get_price_suffix', 'add_price_suffix' );
function add_price_suffix()
$suffix = ',-';
update_option( 'woocommerce_price_display_suffix', $suffix );
return $suffix;
// adds the suffix to the regular price (the <del> element) if the product is on sale
add_filter( 'woocommerce_format_sale_price', 'change_format_sale_price', 99, 3 );
function change_format_sale_price( $price_html, $regular_price, $sale_price )
$suffix = get_option( 'woocommerce_price_display_suffix' );
$price_html = '<del>' . ( is_numeric( $regular_price ) ? wc_price( $regular_price ) : $regular_price ) . $suffix . '</del> <ins>' . ( is_numeric( $sale_price ) ? wc_price( $sale_price ) : $sale_price ) . '</ins>';
return $price_html;
代码已经过测试并且可以运行。将其添加到您的活动主题的 functions.php 中。
【讨论】:
以上是关于如何在 WooCommerce 中为正常价格和促销价格添加后缀?的主要内容,如果未能解决你的问题,请参考以下文章
基于 Woocommerce 3 中的 2 个自定义字段的产品正常价格计算