WooCommerce 判断商品是否为可变商品


在商品详情页,获取当前商品信息

$product = wc_get_product( $post->ID );

之后得到

// 原价
$regular_price = $product->regular_price;
// 促销价
$sale_price = $product->sale_price;
// 可变商品时的最低价格
$price = $product->price;

$price 有值时,说明是可变商品。
还有一个方法,代码如下:

// 原价
$regular_price = get_post_meta($post->ID,'_regular_price',true);
// 促销价
$sale_price = get_post_meta($post->ID,'_sale_price',true);
// 可变商品时的最低价格
$price = get_post_meta($post->ID,'_price',true);

当一个商品创建的时候是单一商品,创建之后又改成可变商品时,$regular_price 还会显示最开始设置的价格。
查询数据库时,_regular_price 显示为空。

可能是缓存问题吧。

根据 _price 来判断是否为可变商品可正常使用。


<< WooCommerce is_ajax() 是否为 AJAX 请求页面 WooCommerce 获取产品分类特色图图片 >>