2017-09-06 8 views
1

私のウェブサイトに製品のリストがあり、それぞれには自分のタグがあります。チェックアウトページにこのタグを表示しようとしています。私はコードを書いたが、それはカート内のものだけでなく、すべての私の製品のすべてのタグを示す。 は、ここに私のコードです:Wordpress + WooCommerce製品タグを取得

 global $woocommerce; 
    $items = $woocommerce->cart->get_cart(); 
    foreach($items as $item => $values) { 
     $_product = wc_get_product($values['data']->get_id()); 
     echo "<b>".$_product->get_title().'</b> <br> Quantity: '.$values['quantity'].'<br>'; 
     $price = wp_get_post_tags($values['product_id'] , '_tag_ids', true); 
     echo " Price: ".$price."<br>"; 


       $terms = get_terms('product_tag'); 
     $term_array = array(); 
     if (! empty($terms) && ! is_wp_error($terms)){ 
      foreach ($terms as $term) { 
       $term_array[] = $term->name; 
      } 

    } 


     print_r($values['product_id']); 

     print_r($term_array); 

     if(in_array('black',$term_array)) { 
     echo 'hello exists'; 
     } else { 
     echo 'not exists'; 
     } 

    } 
    } 

だから=「こんにちは存在する」しかし、それはすべての製品からのすべてのタグを引き出していますので、それは見せて正しい示しています。どのようにして商品IDでタグを取得できますか?私は私の製品IDを$values['product_id']に保存します 私は試しましたget_terms($values['product_id'], 'product_tag');しかし、それは動作しませんでした!

答えて

3

あなたはないget_terms

$terms = get_the_terms(get_the_ID(), 'product_tag'); 
+1

はありがとう、get_the_termsを使用したいと思います! ($ values ['product_id']、 'product_tag'); '私のために働いた:) –

+1

これはすばらしい答えです。投稿をしたくない場合は、the_ID()の代わりにget_the_ID IDはエコー: –

+0

ありがとう、@PavelPetrovあなたは正しいです、私は私の答え、私の部分にばかげたミスを更新します。 – admcfajn

関連する問題