在类别页面上隐藏Woocommerce价格后缀

时间:2019-02-22 16:33:16

标签: php woocommerce

我正在使用自定义代码来修改价格后缀,所以我没有通过woocommerce设置显示它,而是在我的function.php中使用此代码在产品页面上获取价格后缀。

    function change_product_price_html($price){

    $newPrice   .= $price;
    $newPrice   .= " <span class=\"woocommerce-price-suffix\">inkl. MwSt., <a href='https://www.amaoni.de/zahlung-versand#versandkosten'>zzgl. Versandkosten</a></span>";

    return $newPrice;
}

但是现在它还在类别页面上显示价格后缀。

我找到了这个解决方案,但对我来说不起作用。

add_filter('woocommerce_get_price_html', 'hide_price_on_shop');

function hide_price_on_shop($price){
    if(is_shop()){
        $price = '';
    }
    return $price;
}

有没有一种方法可以使价格后缀仅出现在产品页面而不是类别页面?

Category Page

1 个答案:

答案 0 :(得分:0)

假设您要在商品页面上仅显示 ,则可以覆盖主题中的woocommerce / single-product / price.php文件。

要这样做;只需将plugins / woocommerce / templates / single-product / price.php复制到yourtheme / woocommerce / single-product / price.php。

然后在新的price.php文件中,您可以看到类似这样的内容:

price.php

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

global $product;
?>

<p class="<?php echo esc_attr( apply_filters( 'woocommerce_product_price_class', 'price' ) );?>">
    <?php echo $product->get_price_html(); ?>
    <span class=\"woocommerce-price-suffix\">inkl. MwSt., <a href='https://www.amaoni.de/zahlung-versand#versandkosten'>zzgl. Versandkosten</a></span>
</p>