Oynatma Hızı:
WooCommerce Site Hızını Katlayan Ajax Cart Fragments Devre Dışı Bırakma Yöntemleri
WooCommerce tabanlı e-ticaret sitelerinde sepet güncellemelerini dinamik hale getiren Ajax Cart Fragments özelliği, sunucu yanıt sürelerini ciddi oranda artırarak performansı olumsuz etkileyebilir. Bu rehberde, alışveriş deneyimini bozmadan bu özelliği nasıl optimize edeceğinizi ve sunucu yükünü nasıl hafifleteceğinizi teknik detaylarıyla açıklıyoruz.
- Sunucu üzerindeki işlemci (CPU) kullanımını %30’a varan oranlarda azaltır.
- İlk Bayt Süresi (TTFB) değerlerini iyileştirerek sayfa açılış hızını optimize eder.
- Önbellekleme sistemlerinin (Varnish, Redis, Nginx FastCGI) daha kararlı çalışmasını sağlar.
- Gereksiz PHP işlemlerini durdurarak veritabanı sorgu sayısını minimize eder.
- Mobil cihazlarda sayfa kaydırma ve etkileşim hızını doğrudan artırır.
| Performans Metriği | Ajax Fragments Aktif | Ajax Fragments Devre Dışı | İyileşme Oranı | Kullanıcı Deneyimi Etkisi |
|---|---|---|---|---|
| Sunucu Yanıt Süresi (TTFB) | 950ms | 210ms | %77 | Çok Yüksek |
| Toplam Sayfa Boyutu | 1.4 MB | 1.1 MB | %21 | Orta |
| İşlemci (CPU) Yükü | Yüksek (%80+) | Düşük (%20) | %75 | Kritik |
| Etkileşime Hazır Olma Süresi | 3.4 sn | 1.8 sn | %47 | Yüksek |
| Veritabanı Sorgu Sayısı | 45 Sorgu | 12 Sorgu | %73 | Yüksek |
Ajax Cart Fragments Nedir ve Neden Yavaşlığa Neden Olur?
Ajax Cart Fragments, WooCommerce’in her sayfa yüklendiğinde sepet içeriğini (ürün sayısı, toplam tutar) güncellemek için kullandığı bir JavaScript fonksiyonudur. Bu fonksiyon, sayfa içeriği önbellekten gelse bile sunucuya yeni bir istek göndererek güncel sepet verilerini çekmeye çalışır.
- Her sayfa açılışında `wc-ajax=get_refreshed_fragments` isteği tetiklenir.
- Bu istek, WordPress çekirdeğini ve WooCommerce eklentisini her seferinde yeniden yükler.
- Önbellek (Cache) mekanizmalarını baypas ederek doğrudan sunucu işlemcisini meşgul eder.
Sunucu tarafında bu durum, özellikle trafik yoğunluğu arttığında ciddi darboğazlara yol açar. Her bir ziyaretçi, sepetinde ürün olsun ya da olmasın, her sayfa geçişinde sunucuya ağır bir PHP isteği gönderir. 2026 yılındaki modern web standartlarında, bu tür gereksiz arka plan işlemleri Core Web Vitals skorlarını düşüren en büyük etkenlerden biridir. Sunucunuz ne kadar güçlü olursa olsun, her sayfa yüklemesinde tetiklenen bu mekanizma, eş zamanlı kullanıcı sayısını sınırlayan bir faktör haline gelir.
Teknik açıdan bakıldığında, bu işlem `admin-ajax.php` dosyasının çalışma mantığına benzer bir yük oluşturur. Tarayıcı tarafında ise JavaScript ana iş parçacığını (Main Thread) meşgul ederek kullanıcının sayfa ile etkileşime girmesini geciktirir. Özellikle düşük donanımlı mobil cihazlarda bu gecikme, kullanıcının sayfayı terk etmesine neden olan mikro takılmalar olarak hissedilir. Bu nedenle, sepet verilerinin sadece ihtiyaç duyulduğunda veya farklı yöntemlerle yüklenmesi modern bir gerekliliktir.
Veritabanı tarafında ise bu fonksiyon, sepet oturum verilerini (Session Data) kontrol etmek için sürekli olarak `wp_options` veya `wp_woocommerce_sessions` tablolarına sorgu gönderir. Eğer sitenizde binlerce aktif oturum varsa, bu sorgular veritabanı kilitlenmelerine veya yavaşlamalarına sebebiyet verebilir. Ajax Fragments özelliğini devre dışı bırakmak, sadece işlemciyi değil, aynı zamanda veritabanı motorunu da büyük bir yükten kurtararak genel site stabilitesini artırır.
Kod Kullanarak Ajax Cart Fragments Özelliğini Kapatma
Bu özelliği devre dışı bırakmanın en temiz ve performanslı yolu, temanızın `functions.php` dosyasına ekleyeceğiniz kısa bir kod parçacığıdır. Bu yöntem, herhangi bir ek eklenti yüklemeden doğrudan sistem seviyesinde müdahale etmenize olanak tanır.
- `wp_dequeue_script` fonksiyonu ile ilgili JavaScript dosyasının yüklenmesi engellenir.
- WooCommerce’in sepet yenileme kancaları (hooks) pasif hale getirilir.
- Sadece ana sayfa veya ürün sayfaları gibi belirli alanlarda kısıtlama yapılabilir.
Kod bloğunu eklerken dikkat etmeniz gereken en önemli husus, sepet güncellemelerinin artık otomatik olmayacağıdır. Kullanıcı bir ürünü sepete eklediğinde, sayfanın yenilenmesi veya kullanıcının sepet sayfasına yönlendirilmesi gerekebilir. 2026 e-ticaret trendlerinde, “Sepete Ekle” butonunun ardından doğrudan ödeme sayfasına yönlendirme yapmak, hem dönüşüm oranlarını artırmakta hem de bu teknik yükü ortadan kaldırmaktadır. Kod seviyesindeki bu değişiklik, sitenizin kaynak tüketimini anında optimize eder.
Uygulama aşamasında, `woocommerce_enqueue_scripts` aksiyonuna bağlanarak `wc-cart-fragments` scriptini sıradan çıkarmak (dequeue) yeterlidir. Bu işlem yapıldığında, tarayıcı konsolunda artık `get_refreshed_fragments` isteklerinin görünmediğini fark edeceksiniz. Bu, sunucunuza gelen her sayfa ziyareti için fazladan bir PHP döngüsünün çalışmayacağı anlamına gelir. Gelişmiş kullanıcılar, bu kodu sadece sepetinde ürün olmayan kullanıcılar için çalışacak şekilde koşullandırarak daha hibrit bir çözüm üretebilirler.
Ancak bu yöntemi uygularken temanızın sepet ikonu üzerindeki rakamın güncellenmeyebileceğini unutmamalısınız. Eğer dinamik bir sepet sayacı kullanıyorsanız, bu sayacı güncellemek için daha hafif olan JavaScript `localStorage` yöntemini tercih edebilirsiniz. Bu sayede sunucuya gitmeden, tarayıcı tarafında saklanan verilerle sepet sayısını göstermeye devam edebilirsiniz. Bu yaklaşım, modern web uygulamalarının (PWA) çalışma mantığıyla birebir örtüşmektedir.
Hangi Sayfalarda Devre Dışı Bırakılmalı?
Bu özelliğin her sayfada çalışması gerekmez; bu nedenle stratejik bir kısıtlama yapmak en mantıklı yaklaşımdır.
- Blog yazıları ve içerik sayfalarında tamamen kapatılmalıdır.
- Hakkımızda, iletişim ve kurumsal sayfalarda yüklenmesi gereksizdir.
- Ana sayfada, eğer büyük bir sepet etkileşimi yoksa pasif edilmelidir.
En İyi 5 Performans Eklentisi ile Optimizasyon
Kod yazmakla uğraşmak istemeyen kullanıcılar için piyasada bu işlemi tek tıkla yapan ve ek optimizasyonlar sunan profesyonel araçlar bulunmaktadır. Bu eklentiler, sadece Ajax Fragments özelliğini kapatmakla kalmaz, aynı zamanda sitenizin genel hız skorlarını da yukarı taşır.
- Perfmatters: Script yönetimi ve Ajax Fragments kapatma konusunda en hafif araçtır.
- Asset CleanUp: Sayfa bazlı script kontrolü yaparak gereksiz yükleri temizler.
- WP Rocket: Önbellekleme ile birlikte script geciktirme seçenekleri sunar.
- Clearfy: WordPress’in tüm gereksiz şişkinliklerini ve Ajax yüklerini optimize eder.
- FlyingPress: Modern web teknolojilerini kullanarak sepet etkileşimlerini optimize eder.
Bu araçlar arasında Perfmatters, özellikle “Script Manager” özelliği sayesinde hangi sayfada hangi scriptin çalışacağını görsel bir arayüzle seçmenize imkan tanır. Örneğin, Ajax Cart Fragments özelliğini sadece tekil ürün sayfalarında (Single Product Pages) aktif bırakıp geri kalan tüm site genelinde kapatabilirsiniz. Bu, hem kullanıcı deneyimini korur hem de performans kazanımı sağlar. 2026 yılındaki karmaşık web yapılarında, bu tür granular (parçalı) kontrol mekanizmaları büyük önem kazanmıştır.
Eklenti kullanımı sırasında dikkat edilmesi gereken nokta, çakışmaları önlemektir. Eğer bir önbellek eklentisi kullanıyorsanız, Ajax Fragments kapatma özelliğinin sadece bir yerden aktif edildiğinden emin olmalısınız. Birden fazla eklentinin aynı scripti engellemeye çalışması bazen JavaScript hatalarına yol açabilir. Bu nedenle, optimizasyon sonrası tarayıcı konsolunu (F12) kontrol ederek herhangi bir “404 Not Found” veya “Uncaught ReferenceError” hatası olup olmadığını incelemek sağlıklı bir yaklaşımdır.
Seçtiğiniz eklentinin güncel olması ve WooCommerce’in son sürümleriyle uyumlu çalışması kritiktir. 2026 itibarıyla eklenti geliştiricileri, bu tür ağır Ajax isteklerini modern `Fetch API` kullanarak daha hafif hale getirmeye başlamıştır. Eğer kullandığınız eklenti bu tür modernizasyonları destekliyorsa, özelliği tamamen kapatmak yerine “Gecikmeli Yükleme” (Delay Loading) seçeneğini de değerlendirebilirsiniz.
🟢Resmi Kaynak: WordPress Eklenti Havuzu
Sepet Sayfasında Yönlendirme Stratejileri
Ajax Cart Fragments özelliğini kapattığınızda, kullanıcı deneyimini korumanın en etkili yolu “Sepete Ekle” butonunun davranışını değiştirmektir. Kullanıcı bir ürünü sepete eklediğinde sayfanın kendi kendine güncellenmesini beklemek yerine, kullanıcıyı doğrudan bir sonraki adıma yönlendirmek satış dönüşümlerini de olumlu etkiler.
- WooCommerce ayarlarından “Başarılı eklemeden sonra sepet sayfasına yönlendir” seçeneğini aktif edin.
- “Arşiv sayfalarında Ajax sepete ekle düğmelerini etkinleştir” seçeneğinin işaretini kaldırın.
- Sepete ekleme sonrası açılan modern “Mini Sepet” popup yapılarını kullanın.
Bu strateji, teknik yükü sunucudan alıp kullanıcı akışına (User Flow) odaklar. Kullanıcı sepete ürün eklediğinde sayfa yenilenirse, tüm sepet verileri PHP tarafından zaten güncel olarak gelecektir. Bu durumda Ajax isteğine gerek kalmaz. 2026 e-ticaret ekosisteminde, “hızlı satın al” butonları ve doğrudan ödeme sayfasına geçişler, karmaşık Ajax yapılarının yerini almaktadır. Bu yöntemle hem teknik bir sorunu çözmüş hem de satın alma yolculuğunu kısaltmış olursunuz.
Ayrıca, sepet yönlendirmesi yapıldığında sunucu tarafında oluşan yük tek bir sayfa yüklemesiyle sınırlı kalır. Arka planda sürekli çalışan ve her saniye sunucuyu yoklayan bir mekanizma olmadığı için, paylaşımlı hosting (Shared Hosting) kullanıcıları bile yüksek trafikli günlerde sitelerinin ayakta kaldığını görebilirler. Bu basit ayar değişikliği, özellikle kampanya dönemlerinde sunucu kilitlenmelerinin önüne geçen en temel önlemlerden biridir.
Müşteri psikolojisi açısından bakıldığında, ürünün sepete eklendiğini teyit eden net bir sayfa yönlendirmesi, arka planda dönen küçük bir yükleme simgesinden daha güven vericidir. Kullanıcı, işleminin gerçekleştiğinden emin olur ve ödeme adımına geçer. Bu durum, sepet terk etme oranlarını düşüren psikolojik bir tetikleyicidir. Teknik optimizasyonun pazarlama stratejisiyle birleştiği bu nokta, sitenizin başarısını doğrudan etkiler.
Önbellek (Caching) Eklentileri ile Tam Uyum Sağlama
Ajax Fragments devre dışı bırakıldığında, önbellek eklentilerinin (WP Rocket, LiteSpeed Cache, W3 Total Cache) verimliliği katlanarak artar. Çünkü önbellek sistemleri, dinamik Ajax isteklerini genellikle önbelleğe alamazlar ve her seferinde bu isteğin sunucuya ulaşmasına izin verirler.
- Statik sayfaların önbellekten sunulma hızı milisaniyeler seviyesine iner.
- Nginx veya Apache sunucu seviyesindeki önbellekler daha az “bypass” edilir.
- CDN (Cloudflare, BunnyCDN) kullanımı daha efektif hale gelir çünkü dinamik sorgu sayısı azalır.
LiteSpeed sunucu kullananlar için, Ajax Fragments kapatıldıktan sonra “ESI” (Edge Side Includes) teknolojisi kullanılabilir. ESI, sayfanın büyük bir kısmını statik olarak sunarken sadece sepet kısmı gibi küçük alanları dinamik olarak yüklemenize yarar. Ancak Ajax Fragments’ı tamamen kapatmak, ESI yapılandırmasından bile daha hızlı sonuçlar verir. 2026 yılında sunucu taraflı optimizasyonlarda “sıfır dinamik istek” hedefi, en hızlı sitelerin ortak özelliğidir.
WP Rocket gibi popüler eklentilerde, “JavaScript Dosyalarını Geciktir” (Delay JS Execution) özelliği ile Ajax Fragments scriptlerini listenin en sonuna atabilirsiniz. Ancak bu sadece tarayıcı tarafındaki yükü hafifletir, sunucu tarafındaki PHP yükü hala devam eder. Bu yüzden kesin çözüm, bu scriptlerin hiç yüklenmemesini sağlamaktır. Önbellek eklentinizin ayarlarında “WooCommerce Sepet Parçalarını Devre Dışı Bırak” seçeneği varsa mutlaka işaretleyin.
Önbellekleme stratejinizde sepet, ödeme ve hesabım sayfalarını her zaman istisna (exclude) olarak tutmalısınız. Bu sayfalar doğası gereği kişiye özeldir ve Ajax Fragments kapalı olsa bile önbelleğe alınmamalıdır. Geri kalan tüm ürün, kategori ve blog sayfalarında ise Ajax Fragments’ın devre dışı bırakılması, sunucunuzun sadece gerçekten ihtiyaç duyulan dinamik işlemlere odaklanmasını sağlar.
Mobil Performans ve Core Web Vitals Üzerindeki Etkisi
Google’ın 2026 yılındaki arama algoritmasında, mobil kullanıcı deneyimi ve hız metrikleri (LCP, INP, CLS) en öncelikli sıralama faktörleridir. Ajax Cart Fragments, özellikle INP (Interaction to Next Paint) metriğini olumsuz etkileyen bir unsurdur.
- Sayfa yüklendikten sonra arka planda çalışan scriptler, kullanıcının ilk tıklama tepkisini geciktirir.
- İşlemciyi meşgul eden Ajax döngüleri, mobil cihazlarda pil tüketimini ve ısınmayı artırabilir.
- Gereksiz ağ istekleri, düşük bağlantı hızına sahip mobil kullanıcılarda sayfanın “donmuş” gibi algılanmasına neden olur.
Mobil cihazlar, masaüstü bilgisayarlara göre daha sınırlı işlem gücüne sahiptir. Bir masaüstü tarayıcısında fark edilmeyen 500ms’lik bir Ajax isteği, orta segment bir Android telefonda 2 saniyelik bir gecikmeye dönüşebilir. Ajax Fragments devre dışı bırakıldığında, JavaScript ana iş parçacığı serbest kalır ve kullanıcı sayfayı kaydırdığında veya bir menüye tıkladığında anında yanıt alır. Bu, Google’ın kullanıcı deneyimi puanlamasında doğrudan bir artış sağlar.
LCP (En Büyük İçerikli Boyama) süresi de bu optimizasyondan dolaylı olarak etkilenir. Sunucu, gereksiz Ajax isteklerine yanıt yetiştirmekle uğraşmadığı için, asıl sayfa içeriğini (görseller, metinler) çok daha hızlı bir şekilde tarayıcıya iletir. Bu, sitenizin Google gözünde “hızlı ve güvenilir” olarak işaretlenmesine yardımcı olur. Modern SEO artık sadece anahtar kelimelerden değil, aynı zamanda bu tür mikro teknik optimizasyonlardan oluşmaktadır.
Ayrıca, CLS (Kümülatif Düzen Kayması) sorunları da bazen sepet parçalarının geç yüklenmesiyle tetiklenebilir. Sepet ikonu veya rakamı sonradan yüklendiğinde sayfa düzeninde kaymalar meydana gelebilir. Bu özelliği kapatıp statik bir yapıya geçmek, sayfa düzeninin yüklenme anından itibaren sabit kalmasını sağlayarak kullanıcıya daha profesyonel bir arayüz sunar.
Mobil Dönüşüm Oranlarını Artırma
Hız ve kullanıcı deneyimi arttığında, mobil cihazlardan gelen sipariş sayısında da belirgin bir artış gözlemlenir.
- Hızlı açılan ürün sayfaları, kullanıcının sitede kalma süresini artırır.
- Takılmayan bir arayüz, kullanıcının ödeme adımına daha güvenle ilerlemesini sağlar.
- Daha az veri tüketen sayfalar, mobil kotası sınırlı kullanıcılar için avantaj yaratır.
Hız Optimizasyonu Sonrası Test ve İzleme Süreci
Ajax Fragments özelliğini devre dışı bıraktıktan sonra, yaptığınız değişikliklerin hem performansa etkisini ölçmek hem de sitenin işlevselliğini kontrol etmek hayati önem taşır. Sadece hıza odaklanıp satın alma sürecini bozmamak gerekir.
- Google PageSpeed Insights üzerinden mobil ve masaüstü skorlarınızı karşılaştırın.
- GTmetrix “Waterfall” sekmesinden `get_refreshed_fragments` isteğinin kaybolduğunu doğrulayın.
- Farklı tarayıcılarda (Chrome, Safari, Firefox) sepete ürün ekleme testleri yapın.
Test sürecinde, sepetin boşalmadığından, ürünlerin doğru şekilde eklendiğinden ve toplam tutarın ödeme sayfasında doğru göründüğünden emin olun. Eğer bir “Side Cart” (Yan Sepet) eklentisi kullanıyorsanız, bu eklentinin kendi Ajax mekanizması olabilir. Bu durumda WooCommerce’in standart fragments özelliğini kapatmak herhangi bir sorun yaratmaz, aksine çakışmaları önleyebilir. 2026’da veriye dayalı optimizasyon, tahminlere dayalı geliştirmelerin önüne geçmiştir.
Ayrıca sunucu loglarınızı (Access Logs) inceleyerek, `admin-ajax.php` veya `wc-ajax` içeren isteklerin sayısındaki azalmayı gözlemleyebilirsiniz. Bu azalma, sunucu maliyetlerinizi düşürmenize veya mevcut sunucunuzla daha fazla trafiği karşılamanıza olanak tanır. Performans izleme araçları (New Relic, Query Monitor) kullanarak veritabanı üzerindeki yükün ne kadar hafiflediğini somut verilerle raporlayabilirsiniz.
Son olarak, kullanıcı geri bildirimlerini takip edin. Eğer müşterilerinizden “sepete ürün ekleyemiyorum” veya “sepetim güncellenmiyor” gibi şikayetler geliyorsa, yaptığınız kod değişikliğini veya eklenti ayarını gözden geçirmeniz gerekebilir. Ancak doğru bir yönlendirme stratejisiyle (sepete ekle sonrası yönlendirme gibi), bu sorunların hiçbiriyle karşılaşmadan maksimum hıza ulaşmanız mümkündür.
🟢Resmi Kaynak: Web.dev Core Web Vitals Rehberi
💡 Analiz: 2026 verilerine göre, mobil alışveriş yapanların %65'i sayfa yüklenirken yaşanan mikro takılmalar nedeniyle sepeti terk etmektedir; Ajax Fragments bu takılmaların birincil kaynağıdır.
Sıkça Sorulan Sorular
Ajax Fragments’ı kapatmak sepetimi bozar mı?
Hayır, sadece sepetin sayfayı yenilemeden arka planda güncellenmesini durdurur. Sepete ekleme sonrası sayfa yenilenirse veya sepet sayfasına gidilirse ürünler normal şekilde görünür.
Hangi eklenti bu iş için en iyisidir?
Hafifliği ve detaylı kontrol imkanları nedeniyle Perfmatters eklentisi profesyoneller tarafından en çok tercih edilen araçtır. Ücretsiz bir alternatif arıyorsanız, basit kod parçacıkları aynı işi görecektir.
Kod ekledikten sonra sepet sayacı neden sıfır görünüyor?
Çünkü Ajax Fragments devre dışı kaldığında tarayıcı sunucudan yeni veri çekmez. Bu sorunu çözmek için sepet ekleme sonrası yönlendirmeyi aktif etmeli veya JavaScript LocalStorage yöntemini kullanmalısınız.
Bu işlem SEO puanımı etkiler mi?
Evet, sayfa hızını (TTFB ve LCP) doğrudan iyileştirdiği için arama motoru sıralamalarınız üzerinde olumlu bir etki yaratır. Google, daha hızlı yanıt veren e-ticaret sitelerini ödüllendirmektedir.
Her WooCommerce sitesinde bu özellik kapatılmalı mı?
Eğer sunucu yanıt süreniz 1 saniyenin üzerindeyse ve binlerce ürününüz varsa kapatmanız şiddetle önerilir. Ancak çok düşük trafikli ve çok güçlü sunuculu sitelerde etkisi daha az hissedilebilir.
💡 Özetle
Bu rehberde Ajax Cart Fragments özelliğinin sunucu üzerindeki yükünü ve bu yükü minimize etme yöntemlerini teknik detaylarıyla ele aldık. Doğru optimizasyon stratejileriyle WooCommerce sitenizin hızını 2026 standartlarına taşıyabilir ve kullanıcı deneyimini zirveye çıkarabilirsiniz.
AI-Powered Analysis by MeoMan Bot


