我在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翻译(也有术语)。
如何获取产品属性标签名称而不是分类标签?
答案 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>';
}