Seçenekli ürünlerde tek fiyat gösterme

Varyasyonlu ürünlerde oluşturduğunuzda diyelim bir ürünün farklı modelleri var ve modeller arasında fiyat farkı var, siz ürünü oluştururken değişken ürün seçeneğinde oluşturuyor ve modellere göre fiyat tanımlaması yapıyorsunuz. Ürünün ön yüzünde baktığınızda en düşük fiyattan satılan ürün fiyatı ile en yüksek fiyattan satılan ürün fiyatı da ürün fiyat bölümünde görünüyor. Bazı kullanıcılar için bu sorun olmasa da bazı kullanıcılar bundan şikayetçi ve bu yüzden tek bir fiyatın görünmesini istiyorlar.

functions.php dosyanıza aşağıdaki kodu ekleyerek fiyat kısmında en düşük seçeneğin fiyatını göstere bilirsiniz.

add_filter( 'woocommerce_variable_sale_price_html', 'wc_wc20_variation_price_format', 10, 2 );
add_filter( 'woocommerce_variable_price_html', 'wc_wc20_variation_price_format', 10, 2 );
function wc_wc20_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( __( '%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( __( '%1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] );

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

en yüksek fiyatı göstermenizi sağlayacak kod ise :
add_filter( 'woocommerce_variable_sale_price_html', 'wc_wc20_variation_price_format', 10, 2 );
add_filter( 'woocommerce_variable_price_html', 'wc_wc20_variation_price_format', 10, 2 );
function wc_wc20_variation_price_format( $price, $product ) {
// Main Price
$prices = array( $product->get_variation_price( 'max', true ), $product->get_variation_price( 'max', true ) );
$price = $prices[0] !== $prices[1] ? sprintf( __( '%1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] );
// Sale Price
$prices = array( $product->get_variation_regular_price( 'max', true ), $product->get_variation_regular_price( 'max', true ) );
sort( $prices );
$saleprice = $prices[0] !== $prices[1] ? sprintf( __( '%1$s', 'woocommerce' ), wc_price( $prices[0] ) ) : wc_price( $prices[0] );

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

    Bir yanıt yazın

    9 Aralık 2025

    WooCommerce Sepette Adet Değişince Otomatik Güncelleme

    WooCommerce’in varsayılan çalışma mantığında, kullanıcı sepet sayfasında ürün adetini değiştirir ama sepet otomatik olarak güncellenmez. Bunun yerine “Sepeti Güncelle” butonuna manuel olarak basmak gerekir. Bu durum […]