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 özellikle mobil kullanıcılar için hem zaman kaybı hem de kötü bir kullanıcı deneyimine yol açabilir.

Bu yazıda, ek bir eklenti kurmadan, sadece bir mini plugin oluşturarak sepet sayfasının otomatik güncellenmesini sağlayacağız.

Ne İşe Yarar?

Aşağıdaki kod sayesinde:

  • Kullanıcı adet alanını değiştirdiği anda,
  • WooCommerce’in kendi “update cart” AJAX tetikleyicisi çalışır,
  • 1 saniyelik gecikmeyle sepet otomatik güncellenir,
  • Zorunlu “Sepeti Güncelle” butonu kullanımdan kalkar,
  • Daha modern ve daha hızlı bir deneyim sağlanır.

Aşağıdaki kodu kopyalayıp wp-content/plugins/woocommerce-otomatik-sepet-guncelleme/ klasörünün içine woocommerce-otomatik-sepet-guncelleme.php adıyla kaydedin ve eklentiyi etkinleştirin.

<?php
/**
* Plugin Name: WooCommerce Otomatik Sepet Güncelleme
* Description: WooCommerce sepet sayfasında adet değiştirildiğinde, sepeti otomatik olarak günceller.
* Version: 1.0
* Author: Vedat Aydar
* License: GPL2
*/

// Doğrudan erişimi engelle
if ( ! defined( 'ABSPATH' ) ) {
exit;
}

/**
* Sepet sayfasında otomatik güncelleme için JavaScript ekler.
*/
function woocommerce_auto_update_cart_script() {
// Sadece sepet sayfasında ve WooCommerce aktifse çalıştır
if ( is_cart() && function_exists('is_woocommerce') ) {
?>
<script type="text/javascript">
jQuery(document).ready(function($){
// Sepet formunu ve adet giriş alanını dinle
var update_timeout;

// Giriş alanındaki değişimleri yakala
$('.woocommerce-cart-form').on('change', 'input.qty', function(){

// Önceki zaman aşımını temizle
if (update_timeout !== undefined) {
clearTimeout(update_timeout);
}

// 1 saniye sonra (kullanıcının hızlıca birden fazla değişiklik yapmasını önlemek için) güncelle
update_timeout = setTimeout(function() {
// "Sepeti Güncelle" butonuna tıklama olayını tetikle (WooCommerce AJAX tetikleyicisi)
$('[name="update_cart"]').trigger('click');
}, 1000 ); // 1000 milisaniye = 1 saniye gecikme
});
});
</script>
<?php
}
}
// Kodu sayfanın footer'ına ekle
add_action( 'wp_footer', 'woocommerce_auto_update_cart_script' );

Kod Nasıl Çalışıyor?

Kodun mantığı oldukça basit:

  1. is_cart() → Kodun sadece sepet sayfasında çalışmasını sağlar.
  2. jQuery ile adet input alanındaki değişiklikler takip edilir.
  3. Kullanıcı miktarı değiştirdiğinde:
    • 1 saniyelik debounce süresi tanınır
    • Ardından WooCommerce’in “update cart” butonu otomatik tetiklenir
  4. Sebetteki fiyat, toplam ve ara toplamlar anında yenilenir.

Kodlar Kodlayana, Kahveler Bana! ☕

Burada paylaştığım içerikler projelerinde işine yaradıysa veya sana zaman kazandırdıysa, bir kahve ısmarlayarak desteğini gösterebilirsin. Bu destek, daha fazla içerik üretmem için motive edici olacaktır.

☕ Bana Bir Kahve Ismarla

Bir yanıt yazın

29 Aralık 2025

Sitenizin Arka Kapısını Kilitleyin: xmlrpc.php Tehlikesi ve Çözümü

WordPress sitenizi kurdunuz, temanızı seçtiniz ve güvenlik eklentilerinizi yüklediniz. Peki ya sitenizin arka kapısı, yani xmlrpc.php ne durumda? Çoğu site sahibinin varlığından bile haberdar olmadığı, ancak […]
21 Aralık 2025

WooCommerce için Ülkeye Göre Otomatik Para Birimi Değiştirme (Manuel Fiyat)

E-ticaret sitelerinde yurt dışına satış yaparken en büyük dertlerden biri fiyatlandırmadır. Piyasadaki çoğu “Currency Switcher” (Para Birimi Değiştirici) eklentisi, fiyatı o anki kura göre otomatik çarpar. […]
21 Aralık 2025

Eklenti Çöplüğüne Son: WooCommerce Vitrin ve Fırsat Alanlarını Kodla Yönetin

Standart WooCommerce bileşenleri (Son Eklenenler, Çok Satanlar vb.) çoğu zaman işimizi görse de, e-ticaret projelerinde sıklıkla daha spesifik alanlara ihtiyaç duyarız. “Editörün Seçimi“, “Haftanın Yıldızları” veya […]