获取 WooCommerce 产品属性标签名称

Get WooCommerce Product Attribute label name

Variable/variations 在 woocommerce 产品中。

我可以这样做以从 pa_size 中获取属性值:<?php echo $product_variation->get_attributes()['pa_size']; ?> 位于 /wp-admin/edit.php?post_type=product&page=product_attributes.

中的某处

但是如何获得 pa_size 标签(在本例中为:'Size')?已尝试根据 post_type、页面和 "term_group" 获取所有内容。但这是行不通的。我可以看到这通常默认可见,但这是一个自定义解决方案。同样在 https://github.com/woocommerce/woocommerce/blob/3.8.0/templates/single-product/product-attributes.php 中,我看不到他们在哪里打印实际标签,只有 "Attribute child label and value"。但不是实际的 parent(pa_size => 大小)。

现在已经像疯子一样在谷歌上搜索了几个小时。

在你的情况下,你已经知道分类法本身 pa_size

所有产品属性只是分类法,预先带有 pa_ 前缀。

然后您将能够使用 get_term_by()

打印它们

它应该看起来像这样:

<?php
$term = get_term_by('slug', $product_variation->get_attributes()['pa_size'], 'pa_size');
echo $term->name;
?>

要获取 WooCommerce 产品属性的标签名称,您将使用以下两种方式之一:

1) 使用 Woocommerce wc_attribute_label() 专用功能:

$taxonomy   = 'pa_size';
$label_name = wc_attribute_label( $taxonomy );

2) 使用 wordPress get_taxonomy() 功能:

$taxonomy   = 'pa_size';
$label_name = get_taxonomy( $taxonomy )->labels->singular_name;