2014-02-13 138 views

回答

0

在这种情况下,我使用CSS。

我通常会使用Chrome的检测元素(或任何代码浏览器),找到缺货价格的类(可能类似于.outOfStockPrice)。

然后我会使用类似简单的自定义CSS来申请我的自定义CSS(所以我没有去寻找一个特定的文件:http://wordpress.org/plugins/simple-custom-css/

并添加到您的自定义CSS:

.outOfStockPrice { 
    visibility: hidden; 
} 

有关使用CSS隐藏元素的更多信息:http://www.kirupa.com/html5/hiding_things_using_css.htm

+0

我不能隐藏它通过CSS,因为缺货涨价是同一类等价格。如果我隐藏缺货价格,它会自动隐藏所有价格。 – user3280580

+0

那让我很难过。你将不得不去PHP,但是从那里你需要一个WooCommerce专家,或者理解PHP调用价格的地方,并且评论这部分内容。 – Ross

3

在/ your-theme/woocommerce/single-product /文件夹中创建一个文件price.php。粘贴下面的代码。

$ pricelabel =“”; - 如果库存数量为0,则将变量显示为价格而不是价格。

如果您使用$ pricelabel =“”; - 这会消除价格。你可以尝试$ pricelabel =“SOLD OUT!”;或者任何你想要显示的信息。

我其实写了这段代码来显示文本消息而不是特定的价格。我只是改变它来检查库存量而不是价格。

<?php 
/** 
* Single Product Price, including microdata for SEO 
* 
* @author  WooThemes 
* @package  WooCommerce/Templates 
* @version  1.6.4 
*/ 

if (! defined('ABSPATH')) exit; // Exit if accessed directly 

global $post, $product; 
?> 
<div itemprop="offers" itemscope itemtype="http://schema.org/Offer"> 

    <p class="price"> <?php 
     $stockamount = $product->get_stock_quantity(); 
     $price = $product->get_price_html(); 
     $pricelabel = ""; 
     if($stockamount == 0) 
     { 
      echo $pricelabel; 
     } 
     else 
     { 
      echo $price;    
     }; 
    ?> 
    </p> 

    <meta itemprop="price" content="<?php echo $product->get_price(); ?>" /> 
    <meta itemprop="priceCurrency" content="<?php echo get_woocommerce_currency(); ?>" /> 
    <link itemprop="availability" href="http://schema.org/<?php echo $product->is_in_stock() ? 'InStock' : 'OutOfStock'; ?>" /> 

</div> 
0

很简单,woocommerce类仍然添加outofstock整个页面,以便使用和比价格

这将工作

.outofstock .price{display:none} 
4

添加这些到CSS为我工作。第一个从缺货项目的页面中删除价格,第二个从搜索结果中的缺货项目中删除价格。

.outofstock。价格{显示:无}

.outofstock .amount {显示:无}