在Woocommerce 3中获取产品属性标签名称

时间:2018-10-31 09:14:56

标签: php wordpress woocommerce product custom-taxonomy

我在Woocommerce的产品上使用了很多产品属性,并且在表中的所有变体中循环浏览,该表可以在产品页面上用短代码显示。

对于此表,我需要表头中的所有产品属性(在循环浏览变体之前),并使用以下属性获取属性:

$attributes = $product->get_variation_attributes();
foreach ($attributes as $key => $value) {
    echo '<td>'.&key.'</td>';
}

这不是很优雅,是吗?

所以这也可行:

$attributes = $product->get_attributes();
foreach ($attributes as $attribute) {
    echo '<td>'$attribute['name']'</td>';
}

在两种情况下,我都会遇到product属性的问题。我需要获取标签名称,因为每个名称都有一个Polylang翻译(也有术语)。

如何获取产品属性标签名称而不是分类标签?

1 个答案:

答案 0 :(得分:1)

您将使用wc_attribute_label()专用的Woocommerce功能:

foreach ($product->get_variation_attributes() as $taxonomy => $term_names ) {
    // Get the attribute label
    $attribute_label_name = wc_attribute_label($taxonomy);

    // Display attribute labe name
    echo '<td>'.$attribute_label_name.'</td>';
}

OR:

foreach ($product->get_attributes() as $taxonomy => $attribute_obj ) {
    // Get the attribute label
    $attribute_label_name = wc_attribute_label($taxonomy);

    // Display attribute labe name
    echo '<td>'.$attribute_label_name.'</td>';
}