在Woocommerce中始终显示单一变化价格

时间:2019-12-03 12:30:11

标签: wordpress woocommerce

我在woocommerce上建立了一家商店,并且我拥有可变的产品,并且每个变体都有其独特的价格。我试图做的是始终显示最低价格,即使未选择任何选项。而且,以后选择这些选项时,该价格应该会发生变化(就像选项后底部的价格一样,但始终显示)。

显示在选项之后还是之前并不重要。

我尝试使用它:

add_filter( 'woocommerce_show_variation_price', '__return_true' );

但是它在最新版本的woocommerce中不起作用。 感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

要显示最低价格,请在下面使用:

add_filter( 'woocommerce_variable_sale_price_html', 'custom_variation_price_format', 10, 2 );
add_filter( 'woocommerce_variable_price_html', 'custom_variation_price_format', 10, 2 );

function custom_variation_price_format( $price, $product ) {

    // Main Price
    $prices = array( $product->get_variation_price( 'min', true ), $product->get_variation_price( 'max', true ) );
    $price = $prices[0] !== $prices[1] ? sprintf( __( 'From: %1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] );

    // Sale Price
    $prices = array( $product->get_variation_regular_price( 'min', true ), $product->get_variation_regular_price( 'max', true ) );
    sort( $prices );
    $saleprice = $prices[0] !== $prices[1] ? sprintf( __( 'From: %1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] );

    if ( $price !== $saleprice ) {
        $price = '<del>' . $saleprice . $product->get_price_suffix() . '</del> <ins>' . $price . $product->get_price_suffix() . '</ins>';
    }
    return $price;
}

答案 1 :(得分:0)

请使用以下功能:

add_filter( 'woocommerce_format_sale_price', 'addweb_solu_sale_price', 20, 3 );
function addweb_solu_sale_price( $price, $regular_price, $sale_price ) {
    return wc_price( $sale_price );
}