如何解决如何删除只有一个变体的变量产品的价格范围?
我有一个基于wordpress和woocommerce的家具网站。为了保持一致性,即使所有床架只有一种尺寸(国王,大号或双床),我都希望对其有所变化。但是,woocommerce上的变体产品自然有一个价格范围,描述了变体之间的最低价格到最高价格。如果我只有一个变体,则它的最低价格为空白,并且连字符和最高价格仍为零,如下所示,这使其看起来像是负数。如何删除具有一个变体(包括禁用所有其他变体的产品)的连字符。
此网站为khemlanimart.com
编辑:我不希望它被最低价格取代,因为当有一个变化时,最低价格是空的。如果有什么变化,我想在最高价的情况下将其替换为最高价格,而在有多个变化的情况下,仍要保持价格范围
解决方法
更新 (用$this
替换了错误的$product
)。
尝试以下操作,这应删除具有一种变化的可变产品的价格范围:
add_filter( 'woocommerce_variable_price_html','variable_products_with_one_variation',10,2 );
function variable_products_with_one_variation( $price_html,$product ) {
$prices = $product->get_variation_prices( true );
if( count($prices['price']) == 1 ) {
$active_price = end( $prices['price'] );
$reg_price = end( $prices['regular_price'] );
if ( $this->is_on_sale() ) {
$price = wc_format_sale_price( wc_price( $reg_price ),wc_price( $active_price ) );
} else {
$price = wc_price( $active_price );
}
}
return $price;
}
应该可以。无论如何,如果不起作用,请使用this is the right hook。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。