2015-03-03 54 views
0

有人可以向我解釋嗎?is_product更改sale-flash woocommerce不起作用

我想簡單地改變woocommerce銷售閃存分爲2類文本的,一個是「銷售」等是「租」 ..

它的工作對於顯示的產品分類頁面,,但不工作顯示的單品..

這裏的代碼

<?php 
     if(is_product()){ 
      if (is_product_category('Sale')) { 
       echo apply_filters('woocommerce_sale_flash', '<span class="onsale">' . __('Sale!', 'woocommerce') . '</span>', $post, $product); 
       } 

       if (is_product_category('Rental')) { 
       echo apply_filters('woocommerce_sale_flash', '<span class="onsale">' . __('Rent!', 'woocommerce') . '</span>', $post, $product); 
       } 

     }else{ 
      if (is_product_category()) { 

       if (is_product_category('Sale')) { 
       echo apply_filters('woocommerce_sale_flash', '<span class="onsale">' . __('Sale!', 'woocommerce') . '</span>', $post, $product); 
       } 

       if (is_product_category('Rental')) { 
       echo apply_filters('woocommerce_sale_flash', '<span class="onsale">' . __('Rent!', 'woocommerce') . '</span>', $post, $product); 
       } 
      } 
     } 
    ?> 

當我訪問類的頁面,,與銷售類每一個產品顯示「出售!」閃光燈上的文字,以及「Rent!」閃光燈與租金每類產品,,,,

但是當我點擊與租賃類產品以查看詳細,閃光燈仍然顯示「出售!」文字..

回答

0

你不能在一個單一的產品頁面中使用is_product_category() ...因爲它不是一個產品分類頁面。您需要找到該產品所在的實際類別,然後根據該類別輸出銷售Flash。您可以使用get_the_terms()查看帖子類別。

global $post; 
$terms = get_the_terms($post->ID, 'product_cat'); 
if (in_array('Rental', $terms)) { 
    // do something 
}