You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何获取WooCommerce可变产品的变体属性数量?

解决WooCommerce可变产品变体属性数量判断问题

要获取可变产品的变体属性数量,无需依赖get_available_variations(),直接调用WooCommerce产品对象的get_variation_attributes()方法即可——该方法会返回所有用于生成变体的属性数组,用count()函数就能得到属性的数量。

修改后的完整代码如下:

add_action( 'woocommerce_before_single_product_summary', 'if_multiple_attributes' );
function if_multiple_attributes() {
    global $product;

    // 确认当前产品是可变类型
    if ( $product->get_type() === 'variable' ) {
        // 获取所有变体属性数组
        $variation_attributes = $product->get_variation_attributes();
        // 计算属性数量
        $attribute_count = count( $variation_attributes );

        // 当属性数量大于1时执行操作
        if ( $attribute_count > 1 ) {
            // 此处写入你要执行的逻辑
            echo '该产品包含多个变体属性';
        }
    }
}

关键说明:

  • get_variation_attributes()返回关联数组,键为属性的slug(如pa_size),值为该属性对应的可选值集合。
  • count($variation_attributes)直接统计数组元素个数,即变体属性的总数量。
  • 相比遍历get_available_variations()的方案,此方法更直接高效,无需处理大量变体数据。

内容的提问来源于stack exchange,提问作者jlock

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 07:05:27