我找到了很多答案,但没有一个适用于可变产品。我想同时显示可变产品的销售价格和正常价格。
global $product;
if( $product->is_on_sale() ) {
$sale_price = $product->get_sale_price();
}
$regular_price = $product->get_regular_price();
这是有效的,但前提是它是正常产品。我认为即使产品有所变化也一定有可能,但我没有找到。
感谢您的帮助
答案 0 :(得分:0)
对于可变产品的价格,您需要使用特定于WC_Product_Variable
类的不同方法。可变产品由多个产品变体组成,因此可变产品的价格就是其产品变体价格。
您可以获取可变产品的最低或最高价格,例如:
global $product;
// Regular price min and max
$min_regular_price = $product->get_variation_regular_price( 'min' );
$max_regular_price = $product->get_variation_regular_price( 'max' );
// Sale price min and max
$min_sale_price = $product->get_variation_sale_price( 'min' );
$max_sale_price = $product->get_variation_sale_price( 'max' );
// The active price min and max
$min_price = $product->get_variation_price( 'min' );
$max_price = $product->get_variation_price( 'max' );
对于可变产品,如果其中一种产品变体正在销售中,则方法is_on_sale()
将返回true ...
您还可以使用方法get_variation_prices()
,该方法将为您提供可变产品中设置的所有产品变化价格(有效价格,常规价格和销售价格)的多维数组。