Bu makalede5 bölüm
- Teknoloji
- WooCommerce, sayfa cache, Cloudflare, Redis
- Konu
- E-ticaret önbellek sorunları
- Seviye
- Orta
WooCommerce mağazalarında önbellek, hem en büyük hız kazancının hem de en can sıkıcı hataların kaynağıdır. Başka bir müşterinin sepetinin görünmesi, ödeme sayfasında eski fiyat, sepete ekle butonunun çalışmaması veya giriş yapan kullanıcının çıkış yapmış gibi görünmesi; hepsi dinamik sayfaların yanlışlıkla önbelleğe alınmasından kaynaklanır. Bu rehber sık görülen hataları, nedenlerini ve doğru yapılandırmayı anlatır.
Neden bu kadar sık oluyor?
Bir mağazada aynı anda iki tür sayfa vardır: herkese aynı görünen sayfalar (ana sayfa, kategori, ürün) ve kişiye özel sayfalar (sepet, ödeme, hesabım). Önbellek katmanları — eklenti tabanlı sayfa önbelleği, sunucu önbelleği ve CDN — varsayılan olarak bu ayrımı bilmez; hangi isteğin kişiye özel olduğunu URL ve çerez kurallarıyla öğrenmeleri gerekir. Katmanlardan biri bile yanlış yapılandırılırsa hata ortaya çıkar.
Sık görülen hatalar ve nedenleri
| Belirti | Olası neden | Çözüm |
|---|---|---|
| Başka kullanıcının sepeti veya adı görünüyor | Oturumlu istekler CDN’de veya sunucuda önbelleğe alınmış | WooCommerce ve oturum çerezi olan istekleri tüm katmanlarda atlayın |
| Ödeme sayfasında eski fiyat/kargo | Ödeme sayfası önbellekte | /sepet, /odeme, /hesabim ve uç noktaları hariç tutun |
| Sepete ekle çalışmıyor, sepet sayısı güncellenmiyor | Nonce içeren sayfa uzun süre önbellekte; AJAX/fragments isteği önbelleğe alınmış | Önbellek süresini nonce ömrüyle uyumlu tutun, wc-ajax isteklerini atlayın |
| Stokta olmayan ürün “stokta” görünüyor | Stok değişikliğinde ürün sayfası temizlenmiyor | Stok/fiyat güncellemesinde ilgili URL’leri temizleyin |
| Ödeme dönüşünde sipariş durumu yanlış | Ödeme sağlayıcısının geri dönüş (callback) adresi önbellekte veya WAF tarafından engelleniyor | Callback uç noktalarını önbellek ve WAF kurallarından muaf tutun |
Doğru yapılandırma: katman katman
Sayfa önbelleği (eklenti veya sunucu)
- Sepet, ödeme ve hesabım sayfaları (dil ve kalıcı bağlantı yapınızdaki karşılıklarıyla) hariç.
woocommerce_items_in_cart,woocommerce_cart_hash,wp_woocommerce_session_*vewordpress_logged_in_*çerezlerinden biri varsa önbellek atlanır.?add-to-cart=vewc-ajaxistekleri önbelleğe alınmaz.- Önbellek süresi WordPress nonce ömründen (varsayılan olarak 12–24 saat) kısa tutulur veya önbellek düzenli yenilenir.
Cloudflare
- HTML önbelleği kullanılıyorsa (Cache Rules / APO), WooCommerce ve oturum çerezleri için “bypass” koşulu tanımlanır.
- Ödeme sağlayıcısı geri dönüş adresleri ve REST API uç noktaları önbellekten ve agresif WAF kurallarından muaf tutulur.
- “Cache Everything” kuralı koşulsuz uygulanmaz.
Nesne önbelleği (Redis)
Redis, sayfa önbelleğine alınamayan sayfaları hızlandırır ve güvenle kullanılabilir; oturum verisi WooCommerce’in kendi mekanizmasıyla yönetilir. Bellek sınırı ve tahliye politikası ayarlanmalıdır. Katmanların genel işleyişi için Cloudflare, WP Rocket ve Redis rehberine bakabilirsiniz.
Test senaryosu
- Gizli pencerede ürün sayfası açın; önbellek başlığında HIT görün.
- Sepete ürün ekleyin; sepet sayısının güncellendiğini ve sonraki sayfaların önbellek dışı (BYPASS/MISS) geldiğini doğrulayın.
- Farklı bir tarayıcıda aynı sayfayı açın; ilk kullanıcının sepetinin görünmediğini doğrulayın.
- Ödeme sayfasında kupon ve kargo değişikliğinin anında yansıdığını kontrol edin.
- Test ödemesi yapın; sipariş durumunun ve e-postaların doğru olduğunu doğrulayın.
- Yönetim panelinden stok değiştirin; ürün sayfasının güncellendiğini kontrol edin.
Bu testler her eklenti veya önbellek ayarı değişikliğinden sonra tekrarlanmalıdır. Ayrıca sipariş tabloları için HPOS (yüksek performanslı sipariş depolama) uyumluluğu, büyük mağazalarda veritabanı yükünü azaltır.
Sık sorulan sorular
Sepet sayacı neden yanlış gösteriyor?
Sayfa önbellekten geliyorsa sepet sayısı önbelleğe alındığı andaki değeri gösterebilir. Sepet parçaları (fragments) veya blok tabanlı mini sepet dinamik yüklenmeli ve bu istekler önbelleğe alınmamalıdır.
Ürün sayfaları önbelleğe alınabilir mi?
Evet; anonim ziyaretçiler için ürün ve kategori sayfaları önbelleğe alınabilir. Stok ve fiyat değiştiğinde ilgili sayfa temizlenmeli; kişiye özel fiyat varsa (B2B) oturumlu kullanıcılar için önbellek atlanmalıdır.
Redis WooCommerce’i hızlandırır mı?
Evet; özellikle sepet, ödeme, hesabım ve yönetim paneli gibi sayfa önbelleğine alınamayan sayfalarda veritabanı yükünü azaltır. Ancak yavaş sorgunun kendisini düzeltmez.
Mağazanızın önbellek ve performans yapılandırmasını birlikte kurmak için WooCommerce e-ticaret ve WordPress cache ve CDN optimizasyonu hizmetlerimizi inceleyin.
- Teknoloji
- WooCommerce, sayfa cache, Cloudflare, Redis
- Konu
- E-ticaret önbellek sorunları
- Seviye
- Orta
Kurumsal Web ve E-Ticaret
- WooCommerce E-Ticaret ÇözümleriÜrün kataloğu, ödeme güvenliği, cache istisnaları, ERP/stok ve pazaryeri entegrasyonlarıyla ölçeklenebilir WooCommerce e-ticaret projeleri.
- WordPress Cache ve CDN OptimizasyonuOPcache, Redis, tam sayfa cache, WP Rocket ve Cloudflare katmanlarını doğru istisna ve temizleme kurallarıyla kurup PHP ve…
- Web Performansı ve Core Web VitalsLCP, INP ve CLS için ölçülebilir iyileştirme: saha (CrUX) ve laboratuvar verisi, kök neden analizi, görsel, font, JavaScript,…