2014-09-27 79 views
1

經過數小時和數小時的研究,我無法獲得此功能。我希望有一個人可以幫助我。在目錄視圖中顯示「缺貨」Woocommerce

在woocommerce中,缺貨消息僅顯示在單個產品頁面上,而不顯示在目錄頁面上。這意味着有人首先必須點擊產品才能發現它已售罄。遊民。由於我們銷售的是獨特的產品,因此我們必須展示缺貨產品。 「缺貨」通知必須直接在產品圖像下可見。

W're垂死的解決方案:)

親切的問候,

魯斯

+0

請檢查: - http://kb.oboxthemes.com/articles/out-of-stock-products-visible-on-shop/ – Khushboo 2014-09-27 09:33:08

回答

0

發現這個片段here。在我的網站上完美工作。

//add action give it the name of our function to run 
add_action('woocommerce_after_shop_loop_item_title', 'wcs_stock_text_shop_page', 25); 

//create our function 
function wcs_stock_text_shop_page() { 

//returns an array with 2 items availability and class for CSS 
global $product; 
$availability = $product->get_availability(); 

//check if availability in the array = string 'Out of Stock' 
//if so display on page.//if you want to display the 'in stock' messages as well just leave out this, == 'Out of stock' 
if ($availability['availability'] == 'Out of stock') { 
    echo apply_filters('woocommerce_stock_html', '<p class="stock ' . esc_attr($availability['class']) . '">' . esc_html($availability['availability']) . '</p>', $availability['availability']); 
} 

}

+0

這也適用於我。 – furtive 2015-08-25 22:16:52

1

我知道它已經相當一段時間,但我只想做同樣的,發現有兩班,在循環中鋰元素。

VS

<li class="first ... instock"> 

如果只是要更改的標記,也許只是做了CSS,不掛接到woocommerce只是消息。

2

在2017年,這個片段將工作:

add_action('woocommerce_after_shop_loop_item_title', 'woocommerce_template_loop_stock', 10); 
function woocommerce_template_loop_stock() { 
    global $product; 
    if (! $product->managing_stock() && ! $product->is_in_stock()) 
     echo '<p class="stock out-of-stock">Out of Stock</p>'; 
} 
0

最簡單的方法將是使用CSS:

在目錄中的每個產品都會有一個< li>標籤。如果產品有庫存就會有這個類「使用inStock」如果沒有股吧它將有這個類「outofstock」

所以,你可以創建這個CSS:

.outofstock:before{ 
    content: url(http://image.png); 
    position: absolute !important; 
    top: 9px; 
    left: 7px !important; 
    text-align: center; 
    z-index: 9999999; 
} 

請記得用您的image.png網址替換。

相關問題