仅更改产品展示页面上的产品价格显示

时间:2019-12-20 作者:vred

我想更改所有符合条件的产品在产品展示页面上显示价格的方式。我有以下代码:

function sv_change_product_price_display() {
    global $product;

//  $product = wc_get_product( $post->ID );

    if ( $product->is_type( \'variable\' ) ) {
        if( has_term( \'joint\', \'product_tag\', $post->ID) ){
            return $price;
        }
        if( has_term( \'Flowers\', \'product_cat\', $post->ID) ) {
            $cost = $product->get_variation_price( \'max\', true );
            $cost = round($cost / 28, 2);
            $cost = \'<div class="amount"><b>Starting at $\'.$cost.\' per gram</b></div>\';
            $price = $cost;
            return $price;  
        }       
    }
    return $price;
}
add_filter( \'woocommerce_get_price_html\', \'sv_change_product_price_display\' );
这在展示页面上起作用,但它也会改变单个产品页面上的价格,这不是我想要的。我也试过不同的钩子,但都没有用。

1 个回复
SO网友:Tanmay Patel

您可以尝试以下条件shop page 只有

if ( $product->is_type( \'variable\' ) && is_shop()) {

相关推荐