获取WooCommerce产品属性标签名称

时间:2020-01-24 23:05:26

标签: php wordpress woocommerce product custom-taxonomy

woocommerce产品的变量/变化。

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

但是如何获得pa_size标签(在这种情况下为“尺寸”)?尝试根据post_type,page和“ term_group”获取所有内容。但这行不通。我可以看到,通常默认情况下这是可见的,但这是一个自定义解决方案。同样在https://github.com/woocommerce/woocommerce/blob/3.8.0/templates/single-product/product-attributes.php中,我看不到它们在哪里打印实际标签,仅显示“属性子标签和值”。但不是实际的父母(pa_size =>大小)。

已经像疯子一样用Google搜寻了几个小时。

2 个答案:

答案 0 :(得分:2)

要获取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;

答案 1 :(得分:0)

就您而言,您已经知道分类法本身pa_size

所有产品属性仅是分类法,其前缀为pa_

然后,您将可以使用get_term_by()

打印它们

它应该看起来像这样:

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