WooCommerce mağaza promosyonları yürütüyorsanız bu küçük kod parçası size bu konuda yardımcı olacaktır. Mesela “ 2 ürün alana yarı indirim ” ya da “ 3 ürün alana en ucuzunu bedava ” kampanyası nasıl yürütülür?
Bu geçici çözümün ardındaki hile, sepette dolaşarak en ucuz ürünü bulmak ve ardından fiyatını normal fiyattan daha düşük olacak şekilde ayarlamaktır. Eğlence!
![WooCommerce Sepette En Ucuz Ürüne İndirim Uygulama 1](https://www.furkansaglam.com/wp-content/uploads/2023/10/Ekran-Resmi-2023-10-26-21.29.09-1024x597.png)
PHP Snippet'i: WooCommerce Sepetinde En Ucuz Ürün Satış Fiyatını Belirleyin
Aşağıdaki kod, sepetteki en ucuz ürüne %50 indirim uygular (ayrıca BOGO 50 = Bir Alana Bir %50 İndirim denir).
Alt alandaki kodları Temanızın functions.php sayfasına eklemeniz gerekmektedir.
/**
* @snippet Sepette En ucuz ürüne %50 İndirim Uygulama @ WooCommerce Yönetim Ürünler Listesi
* @author Furkan Sağlam
* @compatible WooCommerce 8
*/
add_action( 'woocommerce_before_calculate_totals', 'fks_cheapest_cart_item_half_off', 9999 );
function fks_cheapest_cart_item_half_off( $cart ) {
if ( is_admin() && ! defined( 'DOING_AJAX' ) ) return;
if ( did_action( 'woocommerce_before_calculate_totals' ) >= 2 ) return;
if ( count( $cart->get_cart() ) < 2 ) return; // AT LEAST 2 PRODUCTS IN THE CART
$min = PHP_FLOAT_MAX;
// LOOP THROUGH CART TO FIND CHEAPEST ITEM
foreach ( $cart->get_cart() as $cart_item_key => $cart_item ) {
if ( $cart_item['data']->get_price() <= $min ) {
$min = $cart_item['data']->get_price();
$cheapest = $cart_item_key;
}
}
// LOOP THROUGH CART TO REDUCE CHEAPEST ITEM PRICE BY 50%
foreach ( $cart->get_cart() as $cart_item_key => $cart_item ) {
if ( $cheapest == $cart_item_key ) {
$price = $cart_item['data']->get_price() / 2;
$cart_item['data']->set_price( $price );
$cart_item['data']->set_sale_price( $price );
}
}
}
Kod eklendikten sonra sepette en uygun fiyatlı ürününüze %50 İndirim uygulanmış olacaktır.
![WooCommerce Sepette En Ucuz Ürüne İndirim Uygulama 2](https://www.furkansaglam.com/wp-content/uploads/2023/10/Ekran-Resmi-2023-10-26-21.26.53-1024x606.png)
Görselde gördüğünüz gibi indirim uygulandı ama bunu müşteriye bildirmemiz ve göstermemiz de gerekmektedir. İndirim uygulanmadan önceki fiyatını da göstermemiz gerekiyor bu durumla ilgili kodlarıda alt alanda sizlerle paylaşıyorum.
add_filter( 'woocommerce_cart_item_price', 'fks_change_cart_table_price_display', 30, 3 );
function fks_change_cart_table_price_display( $price, $values, $cart_item_key ) {
$slashed_price = $values['data']->get_price_html();
$is_on_sale = $values['data']->is_on_sale();
if ( $is_on_sale ) {
$price = $slashed_price;
}
return $price;
}
![WooCommerce Sepette En Ucuz Ürüne İndirim Uygulama 3](https://www.furkansaglam.com/wp-content/uploads/2023/10/Ekran-Resmi-2023-10-26-21.44.29-1024x580.png)
Bu makaleyi beğendiyseniz, lütfen WordPress video eğiticileri için YouTube Kanalımıza abone olun. Bizi Twitter ve Facebook’ta da bulabilirsiniz.