如何获取属性名称而不是变体中的 slug?

2022-08-31 00:45:17

我需要从woocommerce产品变体中获取属性。

$terms = get_post_meta($value['variation_id'], 'attribute_pa_color', true);

此代码为我提供了一个属性 slug 而不是 name。如何获取属性名称?

提前非常感谢!


答案 1

你得到的是一个分类法的鼻涕虫...在WooCommerce中,没有是一个分类法。attribute_pa_colorattribute_

所以你可以尝试这样的事情。通过 slug 获取术语。并得到它的名字。

$taxonomy = 'pa_color';
$meta = get_post_meta($value['variation_id'], 'attribute_'.$taxonomy, true);
$term = get_term_by('slug', $meta, $taxonomy);
echo $term->name;

答案 2

您可以通过以下代码轻松找到属性

 foreach ($product->attributes as $taxonomy => $attribute) {
   foreach ($attribute->get_terms() as $term) {
      var_dump($term); // term object data
   }
}


推荐