我试图获得产品自定义属性值,但我很难做到这一点 .
我试着做:
global $woocommerce, $post, $product;
$res = get_post_meta($product->id);
print_r(unserialize($res['_product_attributes'][0]));
而且我得到了这些原始数据:
[pa_koostis] => Array
(
[name] => pa_koostis
[value] =>
[position] => 0
[is_visible] => 1
[is_variation] => 0
[is_taxonomy] => 1
)
我知道有一个值,因为它在属性部分显示它,但我无法找到一种方法让它在我的自定义代码中显示 .
9 回答
答案是“任何想法立即获得所有属性?”问题只是调用只有产品ID的函数:
key是可选的,请参阅http://codex.wordpress.org/Function_Reference/get_post_meta
您可以使用以下代码获取属性的单个值:
您将在“$ formatted_attributes”中获取数组属性
woocommerce_get_product_terms()
现已弃用 .请改用
wc_get_product_terms()
.例:
更新2018.您可以使用:
要自定义输出,请将
plugins/woocommerce/templates/single-product/product-attributes.php
复制到themes/theme-child/woocommerce/single-product/product-attributes.php
并进行修改 .试试这个来获取属性名称=>属性值的数组:
它效率不高但可以解决问题 .
Most updated:
如果它不在页面上,您将需要定义
$product
.请使用以下内容作为@datafeedr写入in his answer:
甚至更紧凑:
原始答案:
使用下面的代码获取所有属性和详细信息