我正在创建一个包含 4000 种产品的 Wordpress Woocommerce 网上商店。产品列表由制造商每天更新,然后通过此网上商店的 FTP 进行更新。
不幸的是,制造商给出的值为“0”作为非折扣产品的销售价格。我怎样才能删除这个值?
我尝试使用php代码,但仅显示的价格发生了变化(网上商店显示原始价格),但如果我将其添加到购物车中,则会将其考虑为价格“0”。
我不仅希望“0”促销价显示原价,还想将其删除。
顺便说一句,价格过滤器在网站上也不起作用,因为它认为它是“0”价格。
add_filter('woocommerce_get_price_html', 'custom_price_html', 10, 2 ); 函数 custom_price_html( $price, $product ) {
if ( $product->is_on_sale() && $product->get_sale_price() == '0' ) {
$price = wc_price( wc_get_price_to_display( $product, array( 'price' => $product->get_regular_price() ) ) ) . $product->get_price_suffix();
}
return $price;
}
您是否尝试在销售价格中添加空字符串?
function clear_zero_sale_price( $product ) {
if ( $product->get_sale_price() == '0' ) {
$product->set_sale_price( '' );
$product->save();
}
}
add_action( 'woocommerce_product_set_stock', 'clear_zero_sale_price' );