2016-05-04 11 views
0

の、現在これを使用してイム:Woocommerce:get_formatted_name()私はwoocommerceの変化の名前を取得しようとしている変動

$variationDetails = wc_get_product($variation_id); 
$variationDetails->get_formatted_name(); 

しかしget_formatted_name()があまりにも多くの詳細に長い文字列を返し、私はバリエーションの単純な名前が必要です。私は$ variationDetails-> get_title()を試しましたが、バリエーション名の代わりにプロダクトタイトルのみを返します。

バリエーション名を取得する簡単な機能はありますか?

+0

製品のバリエーションのタイトルを取得するために書いたものであるのに役立ちます:[Woocommerce:製品バリエーションタイトルを取得] (http://stackoverflow.com/questions/29741270/woocommerce-get-product-variation-title) – LoicTheAztec

答えて

5

うまくいけば、これは、同じ問題を抱えていた最近、これは*(かもしれない)私はこれが参考*可能性が

$variations = $product->get_available_variations(); 
$variation_names = array(); 

foreach ($variations as $variation) { 

// Get attribute taxonomies 
$taxonomies = array_keys($variation['attributes']); 

// Loop through variation taxonomies to get variation name and slug 
foreach ($taxonomies as $tax) { 
    $get_term_tax = str_replace('attribute_', '', $tax); 
    $meta = get_post_meta($variation['variation_id'], $tax, true); 
    $term = get_term_by('slug', $meta, $get_term_tax); 
    $var_name = $term->name; 
    $variation_names[] = $var_name; 
} 
} 
関連する問題