Selamlar, Yazılım uzmanı değilim lakin chatgpt ile şöyle bir kod yazdırdım function.php en alta ekleyip deneyebilrimisin ?

X yazan yere ilgili kategorinin İD'sini yazıcaksın bunu kategoriler kısmına girdikten sonra fareyi ilgili kategorinin üstüne getir url görünür orda İD sini bulabilirsin.

function indirim_kontrolu() {
// x kategorisinin ID'sini al
$x_kategorisi_id = get_term_by('slug', 'x', 'product_cat')->term_id;

// Tüm ürünleri getir
$tum_urunler = wc_get_products();

// Toplam fiyatı saklamak için bir değişken tanımla
$toplam_fiyat = 0;

// Ürünleri kontrol et
foreach ($tum_urunler as $urun) {
// Ürünün kategorilerini al
$kategoriler = $urun->get_category_ids();

// Eğer ürün x kategorisine ait değilse
if (!in_array($x_kategorisi_id, $kategoriler)) {
// Ürünün fiyatını toplam fiyata ekle
$toplam_fiyat += $urun->get_price();
}
}

// Toplam fiyat 4000 TL'yi geçerse
if ($toplam_fiyat > 4000) {
// Tüm sepet ürünlerine %5 indirim uygula
WC()->cart->apply_coupon('indirimkodu'); // 'indirimkodu' yerine kullanmak istediğiniz bir kupon kodu belirleyebilirsiniz.
}
}

// Sepet güncellendiğinde fonksiyonu çağır
add_action('woocommerce_cart_updated', 'indirim_kontrolu');
Başka bir function bunuda deneyebilirsin bu daha doğru olabilir.

function otomatik_indirim_uygula() {
// İndirim uygulanacak kategorinin ID'sini belirle
$hedef_kategori_id = 10; // Bu kısmı kendi kategorinizin ID'siyle değiştirin

// Tüm sepet ürünlerini al
$tum_urunler_sepet = WC()->cart->get_cart();

// Toplam fiyatı saklamak için bir değişken tanımla
$toplam_fiyat = 0;

// Sepetteki ürünleri kontrol et
foreach ($tum_urunler_sepet as $sepet_urun) {
// Ürün ID'sini al
$urun_id = $sepet_urun['product_id'];

// Ürünün kategorilerini al
$kategoriler = get_the_terms($urun_id, 'product_cat');

// Eğer ürün hedef kategoriye ait değilse
if ($kategoriler && !in_array($hedef_kategori_id, wp_list_pluck($kategoriler, 'term_id'))) {
// Ürünün toplam fiyatını toplam fiyata ekle
$toplam_fiyat += $sepet_urun['line_total'];
}
}

// Toplam fiyat 4000 TL'yi geçerse
if ($toplam_fiyat > 4000) {
// Tüm sepet ürünlerine %5 indirim uygula
$indirim_orani = 0.05;
foreach ($tum_urunler_sepet as $key => $sepet_urun) {
$yeni_fiyat = $sepet_urun['line_total'] * (1 - $indirim_orani);
WC()->cart->cart_contents[$key]['line_total'] = $yeni_fiyat;
WC()->cart->cart_contents[$key]['data']->set_price($yeni_fiyat / $sepet_urun['quantity']);
}
}
}

// Sepet güncellendiğinde fonksiyonu çağır
add_action('woocommerce_cart_calculate_fees', 'otomatik_indirim_uygula');