Woocommerce İkinci Ürüne Yüzde 40 İndirim By: Kerem Date: 22 Ekim 2024, 19:09:53
Aşağıda vereceğim kod, sepete eklenen ürünlerden en düşük olanına %40 indirim uygulayacaktır.
add_action( 'woocommerce_cart_calculate_fees', 'en_dusuk_fiyatli_urun_indirimi', 10, 1 ); function en_dusuk_fiyatli_urun_indirimi( $cart ) { if ( is_admin() && ! defined( 'DOING_AJAX' ) ) return; if ( did_action( 'woocommerce_before_calculate_totals' ) >= 2 ) return; // Sepetteki toplam ürün sayısını kontrol et if ( $cart->get_cart_contents_count() < 2 ) return; // Eğer 2 veya daha fazla ürün yoksa, indirimi uygulama $yuzde = 40; // İndirim yüzdesi (%40) $indirim = 0; // Toplam indirim $dusuk_fiyatli_urun = null; // En düşük fiyatlı ürünü tutacak değişken $dusuk_fiyat = PHP_INT_MAX; // Başlangıçta çok yüksek bir fiyat değeri // Sepet öğelerini döngüye alarak en düşük fiyatlı ürünü bul foreach ( $cart->get_cart() as $cart_item ) { $urun_fiyati = wc_get_price_excluding_tax( $cart_item['data'] ); // Vergi hariç ürün fiyatı if ( $urun_fiyati < $dusuk_fiyat ) { $dusuk_fiyat = $urun_fiyati; $dusuk_fiyatli_urun = $cart_item; } } // En düşük fiyatlı ürüne %40 indirim uygula if ( $dusuk_fiyatli_urun ) { $indirim = $dusuk_fiyat * $yuzde / 100; $cart->add_fee( __( 'En düşük fiyatlı ürün indirimi', 'woocommerce' ), -$indirim ); } }