WPHizmet

WooCommerce Yavaş mı? Mağaza Hızlandırma Rehberi

Yayınlandı:
Son teknik kontrol:
3 dk okuma

WooCommerce

Kısa cevap

WooCommerce, sepet, ödeme ve hesabım gibi kişiye özel sayfaları önbelleğe alınamadığı için sıradan bir WordPress sitesinden daha fazla sunucu işi yapar. Hızlandırmanın temeli, ürün ve kategori sayfalarını önbelleğe alıp kişiye özel sayfaları hariç tutmak, veritabanı yükünü kalıcı bir nesne önbelleğiyle (Redis gibi) azaltmak, siparişleri yüksek performanslı sipariş tablolarına (HPOS) taşımak ve biriken zamanlanmış görevleri temizlemektir. Ödeme ve kargo eklentilerinin betiklerinin tüm sayfalarda yüklenmemesi de ön yüzü belirgin biçimde hafifletir.

Önemli noktalar

  • Sepet, ödeme ve hesabım sayfaları asla önbelleğe alınmaz; ürün ve kategori sayfaları alınabilir.
  • Kalıcı nesne önbelleği, önbelleğe alınamayan sayfalarda veritabanı yükünü azaltmanın ana yoludur.
  • HPOS, siparişleri kendi tablolarında saklar; eski mağazalarda geçiş öncesi eklenti uyumu kontrol edilmelidir.
  • Birikmiş Action Scheduler görevleri ve süresi dolmuş geçici veriler veritabanını şişirir.
  • Katmanlı filtreler ve büyük varyasyonlu ürünler en ağır sorguları üretir.

WooCommerce neden daha ağır?

Bir blog yazısı herkese aynı görünür ve bir kez üretilip önbellekten sunulabilir. Bir mağazada ise sepet, fiyat (kullanıcı rolüne veya kampanyaya göre), stok ve hesap bilgileri kişiye veya ana göre değişir. Bu yüzden WooCommerce sayfalarının bir bölümü her istekte PHP ve veritabanı tarafından yeniden üretilir. Genel hız adımları (sunucu, görseller, JavaScript) WordPress site hızlandırma rehberinde; bu rehber yalnızca mağazaya özgü konuları anlatır.

1. Önbellek: neyi alıp neyi hariç tutmalı?

SayfaSayfa önbelleğiNeden
Ana sayfa, kategori, ürünEvetHerkese aynı içerik — en büyük kazanç burada
SepetHayırKişiye özel
ÖdemeHayırKişiye özel; önbellek ödeme hatalarına yol açar
HesabımHayırKişiye özel
Oturum açmış kullanıcılarGenellikle hayırRol bazlı fiyat ve kişisel içerik

Önbellek katmanlarının nasıl birlikte çalıştığını WordPress önbellek nedir rehberinde anlattık.

2. Kalıcı nesne önbelleği

Önbelleğe alınamayan sepet ve ödeme sayfalarında bile aynı veriler (ürün bilgileri, ayarlar, oturum) tekrar tekrar sorgulanır. Redis veya Memcached gibi kalıcı bir nesne önbelleği bu sorguların sonuçlarını bellekte tutar ve veritabanı yükünü azaltır. Hosting bunu destekliyorsa WooCommerce mağazaları için en etkili sunucu tarafı adımlardan biridir.

3. Sepet parçaları (cart fragments)

Sepet parçaları betiği, menüdeki mini sepetin sayfa önbellekten gelse bile güncel görünmesi için arka planda sunucuya istek atar. Eskiden her sayfada yüklenirdi ve yoğun mağazalarda sunucuya ciddi yük bindirirdi. WooCommerce 7.8’den beri betik varsayılan olarak yalnızca Sepet bileşeninin bulunduğu sayfalarda veya bir eklenti/tema ona bağımlılık bildirdiğinde yüklenir.

  • Tarayıcının geliştirici araçlarında Ağ sekmesini açın; her sayfada ?wc-ajax=get_refreshed_fragments isteği görüyorsanız bir tema veya eklenti betiği hâlâ yüklüyordur.
  • Temanın kendi mini sepeti varsa sepet parçalarına ihtiyaç duyup duymadığını kontrol edin; devre dışı bırakmak mini sepetin güncellenmemesine yol açabilir, değişikliği mutlaka test edin.

4. HPOS: yüksek performanslı sipariş tabloları

WooCommerce siparişleri uzun süre WordPress’in yazı tablolarında (posts ve postmeta) sakladı. Yüksek Performanslı Sipariş Depolama (HPOS), siparişleri kendi tablolarında ve indeksleriyle saklar; sipariş sayısı arttıkça sipariş sorguları ve panel belirgin biçimde daha verimli çalışır. WooCommerce 8.2’den beri yeni kurulumlarda varsayılandır.

  1. Mevcut durumu kontrol edin

    WooCommerce → Ayarlar → Gelişmiş → Özellikler bölümünde sipariş depolama yöntemini görebilirsiniz.

  2. Eklenti uyumunu doğrulayın

    WooCommerce aynı ekranda HPOS ile uyumsuz eklentileri listeler. Uyumsuz bir eklenti varsa güncellemesini bekleyin veya alternatif bulun.

  3. Senkronizasyonla geçin

    Eski mağazalarda önce iki depolamanın eşzamanlanmasını açıp tamamlanmasını bekleyin, ardından HPOS’a geçin. İşlem öncesi veritabanı yedeği şarttır.

5. Zamanlanmış görevler ve geçici veriler

WooCommerce ve birçok eklentisi arka plan işleri için Action Scheduler kullanır. Tamamlanmış, başarısız veya bekleyen görevler zamanla on binlerce satıra ulaşabilir; WooCommerce → Durum → Zamanlanmış Eylemler ekranında bekleyen ve başarısız görevleri inceleyebilirsiniz. Sürekli başarısız olan bir görev genellikle bozuk bir eklentiye işaret eder. Benzer şekilde süresi dolmuş geçici veriler (transient) veritabanında birikebilir.

6. Katalog: filtreler, varyasyonlar, arama

  • Çok sayıda özelliğe göre filtreleme yapan katmanlı gezinme, her kombinasyon için ayrı sorgu üretir ve önbellek verimini düşürür. Filtre sayısını gerçekten kullanılanlarla sınırlayın.
  • Yüzlerce varyasyonlu ürünler ürün sayfasını ağırlaştırır; varyasyonların gerçekten ayrı ürün mü olması gerektiğini değerlendirin.
  • Varsayılan WordPress araması büyük kataloglarda yavaş ve isabetsiz olabilir; büyük mağazalarda özel bir arama çözümü gerekebilir.

7. Ön yüz: betikleri yalnızca gereken sayfada yükleyin

Ödeme sağlayıcısı, kargo takibi, canlı destek ve pazarlama eklentileri betiklerini sıklıkla her sayfada yükler. Ödeme betiğinin blog yazılarında yüklenmesi gereksizdir. Betik yöneticisi eklentileri veya tema düzeyinde koşullu yükleme ile bu betikleri ilgili sayfalarla sınırlamak, ön yüzü belirgin biçimde hafifletir — ancak ödeme akışını baştan sona test ederek.

Ölçüm: mağazada neye bakılır?

SayfaÖlçüt
Kategori ve ürünCore Web Vitals (LCP, CLS) — ziyaretçinin ilk deneyimi
Sepete eklemeDüğmeye basıldıktan sonra tepki süresi (INP)
Sepet ve ödemeSunucu yanıt süresi — önbelleğe alınamadığı için sunucu hızını doğrudan gösterir
Yönetim paneliSipariş listesi ve rapor ekranlarının açılış süresi

Mağazanız yavaş mı?

WooCommerce’e özgü darboğazları ölçüp ödeme akışını bozmadan hızlandıralım.

WooCommerce Destek

Sık sorulan sorular

WooCommerce ile hangi önbellek eklentisi kullanılmalı?
Hangi eklentinin seçildiğinden çok, WooCommerce sayfalarını ve çerezlerini doğru tanıyıp hariç tutması önemlidir. Hosting sunucu düzeyinde önbellek sunuyorsa (ör. LiteSpeed veya Nginx tabanlı), genellikle onunla uyumlu eklenti en iyi sonucu verir. Aynı anda iki önbellek eklentisi kullanmayın.
HPOS’a geçmek riskli mi?
Yeni mağazalarda zaten varsayılandır. Eski mağazalarda risk, siparişleri doğrudan yazı tablolarından okuyan eski eklentilerdir; WooCommerce bunları uyumsuz olarak işaretler. Yedek alarak, önce eşzamanlamayı tamamlayarak ve kopya ortamda deneyerek geçmek güvenlidir.
Mağazam kampanya günlerinde çöküyor, ne yapmalıyım?
Kampanya trafiği önbelleğe alınamayan sepet ve ödeme sayfalarına yoğunlaşır; bu yüzden sunucu kaynakları ve nesne önbelleği belirleyicidir. Kampanyadan önce yük testi yapmak ve gerekirse geçici olarak daha güçlü bir sunucu planına geçmek en güvenli yoldur.
Ürün görselleri de hızı etkiler mi?
Evet; kategori sayfalarında onlarca ürün görseli yüklenir. Doğru boyut, modern biçim ve tembel yükleme mağazalarda özellikle önemlidir.

Kaynaklar ve teknik referanslar

Bu içeriği hazırlayan

WPHizmet Ekibi

WordPress teknik ekibi

WPHizmet içeriklerini hazırlayan teknik ekip. Rehberler, WordPress ve WooCommerce sitelerinde günlük olarak karşılaşılan sorunlara dayanır; sürüm, yapılandırma ve gereksinim bilgileri yayın öncesinde resmi dokümantasyondan doğrulanır.

  • WordPress teknik destek
  • Performans ve Core Web Vitals
  • Güvenlik ve zararlı kod temizliği
  • WooCommerce
  • Teknik SEO

İlgili içerikler