获取产品变体属性术语的描述

Get the Description of Product Variations Attributes terms

在 Woocommerce 中,我有这些属性和它们的术语:

color: blue(description=1), red(description=2)
size:  xl(description=10),  m(description=20)

所有术语都有上面提到的描述字段。

对于可变产品,我有以下变体:

blue-m 
red-xl

为了自动生成变体 SKU(基于这些描述),我需要获取每个变体中使用的属性术语的描述(我们为每个可变产品使用不同的属性)。

例如,对于 red 颜色和 xl 大小的变体,我想得到类似 210 的东西(来自 red 和 [=13= 的描述])

我尝试使用 $variation['attributes'] 并从中删除多余的字符以与 get_terms 一起使用以获取变体中使用的属性的描述,但我没有成功。

有什么想法吗?

一旦您通过这种方式获得产品变体 ID $variation_id,就可以轻松完成此操作:

// Initializing
$variation_sku = '';

// Get the product variation object (instance)
$variation = wc_get_product( $variation_id );

// Loop through variation attributes "taxonomy" / "terms" pairs
foreach( $variation->get_variation_attributes() as $attribute => $value ){
    $taxonomy = str_replace( 'attribute_', '', $attribute );
    $term = get_term_by( 'slug', $value, $taxonomy );
    // $term_name = $term->name;
    $variation_sku .= $term->description; // <= HERE the Description
}
// Displaying the sku
echo '<p>'.__("SKU: ").$variation_sku.'</p>';