WooCommerce变体属性标签

时间:2014-12-19 05:32:01

标签: php wordpress wordpress-plugin woocommerce

我正在尝试修改一个插件(Eggplant Variations Add-to-Cart),其中包含所需的结果,而不是格式化和显示属性slug,我希望它实际显示属性的真实值。

例如,我有一个属性'Option',其值为'Red&绿色|蓝&黄色'。这些用于变化。目前这个插件将显示“红绿”或“蓝黄”。这是由于这一行:

printf( '<span class="attr attr-%s">%s</span>', $key, ucwords($val) );

这里发生的一切都是正在转换slug,以便用空格替换破折号和下划线,并且每个单词都是首字母大写。

通过以下方式检索变体和属性:

$variations = $product->get_available_variations();
$attributes = $product->get_attributes();

这些变量之间没有参考点,以便使用$ variations属性slug检索$属性值。

如何返回真正的属性值(即'Red&amp; Green','Blue&amp; Yellow')?

2 个答案:

答案 0 :(得分:0)

请尝试以下代码:

  $p=get_post_meta($product_id,'_product_attributes',true);

  $attr_value=$p['attribute_slug']['value'];

答案 1 :(得分:0)

过去的日期,但这是你的解决方案:

$taxonomy = str_replace( "attribute_",'', $key );
$meta = get_post_meta($value['variation_id'], 'attribute_'.$taxonomy, true);
$term = get_term_by('slug', $meta, $taxonomy);

printf( '<span class="attr attr-%s">%s</span>', $key, $term->name );