WooCommerce Sitesi Neden Yavaşlar? Hız Sorununun En Yaygın Nedenleri

Oba Beyi

Administrator
Yönetici
Yetkili
WooCommerce kullananların bir süre sonra karşılaştığı sorunlardan biri sitenin yavaşlaması. Site ilk kurulduğunda gayet hızlıdır, ürünler eklenmeye, siparişler gelmeye ve eklentiler çoğalmaya başladıktan sonra işler değişebilir.

Ürün sayfası geç açılır, yönetim panelinde siparişlere girerken bekletir, bazen sepete ürün eklemek bile birkaç saniye sürer.

Böyle olunca da ilk akla gelen hosting oluyor. Hosting firmasına yazılıyor, paket yükseltiliyor, RAM artırılıyor ama bazı sitelerde sonuç yine değişmiyor.

Çünkü WooCommerce'te yavaşlığın sebebi her zaman hosting değil.

Öncelikle WooCommerce'in biraz kaynak istediğini kabul etmek lazım​

Normal bir WordPress sitesiyle WooCommerce mağazasını aynı kefeye koymamak gerekiyor.

Bir blog veya kurumsal sitede ziyaretçi sayfayı açar, içeriği okur ve çıkar. Sayfaların büyük bölümü cache üzerinden gösterilebilir.

E-ticaret sitesinde ise ziyaretçi ürün arıyor, kategori değiştiriyor, filtre kullanıyor, sepete ürün ekliyor, giriş yapıyor, kupon deniyor, kargo seçiyor ve ödeme yapıyor.

Üstelik stok ve fiyat bilgileri de değişiyor.

Dolayısıyla WooCommerce'in sunucuyla işi normal bir WordPress sitesine göre daha fazla.

Ama bu, WooCommerce kullanan her sitenin yavaş olması gerektiği anlamına gelmiyor.

Hosting gerçekten yeterli mi?​

Bence ilk bakılacak yerlerden biri burası.

Özellikle uygun fiyatlı paylaşımlı hosting paketlerinde site başlangıçta sorunsuz çalışabiliyor. 50-100 ürün varken problem yok ama ürün sayısı ve trafik yükseldikçe yavaşlık başlıyor.

Bunu anlamanın güzel yollarından biri yoğun saatlere bakmak.

Site gece hızlı, gündüz yavaşsa veya reklam açtığınız anda performans düşüyorsa kaynak limitlerine takılıyor olabilirsiniz.

CPU sürekli tavana vuruyor mu, RAM yeterli mi, PHP worker sınırı nedir gibi değerlere bakmak gerekiyor.

Fakat direkt hosting firmasını suçlamak da doğru değil. Çok güçlü sunucuda yavaş çalışan WooCommerce siteleri de var.

Her gördüğümüz eklentiyi kuruyoruz​

WordPress'in en güzel tarafı aynı zamanda en büyük sıkıntılarından biri.

Bir özellik lazım oluyor, eklenti kuruyoruz.

Kargo için bir tane, fatura için bir tane, SEO için bir tane, filtreleme için bir tane, güvenlik için başka bir tane...

Bir süre sonra sitede 30-40 eklenti oluyor.

Burada “30 eklenti varsa site yavaştır” demek doğru değil. Düzgün hazırlanmış 30 eklenti gayet sorunsuz çalışabilirken tek bir kötü eklenti bütün siteyi ağırlaştırabilir.

Özellikle dışarıdaki servislere bağlanan eklentilere dikkat etmek lazım.

Kargo, muhasebe, pazaryeri, ERP, stok veya başka bir API ile çalışan eklenti cevap bekliyorsa yönetim panelinde ciddi yavaşlık oluşturabiliyor.

Sitede artık kullanılmayan eklentileri de tutmanın pek anlamı yok.

Tema da sandığımızdan fazla etkiliyor​

WooCommerce temalarında bu durum çok sık görülüyor.

Temanın demosuna giriyorsunuz, her şey şahane. Slider var, hızlı ürün görüntüleme var, mega menü var, karşılaştırma var, animasyonlar var.

Gerçek mağazaya geçince bunların üzerine WooCommerce ve diğer eklentiler de biniyor.

Sonra bir ürün sayfasını açarken tonla CSS ve JavaScript yüklenmeye başlıyor.

Özellikle hazır temalarda kullanılmayan özellikleri kapatmak ciddi fark oluşturabiliyor.

Tema seçerken sadece görüntüsüne değil performansına da bakmak lazım.

Ürün fotoğraflarını olduğu gibi yüklemeyin​

Bu da çok yapılan bir hata.

Telefondan veya fotoğraf makinesinden çıkan 4-5 MB fotoğraf doğrudan WooCommerce'e yükleniyor. Bir üründe 7 fotoğraf varsa sadece görseller yüzünden ciddi veri transferi oluşuyor.

Müşterinin o çözünürlüğe çoğu zaman ihtiyacı yok.

Fotoğrafları uygun boyuta getirip sıkıştırmak ve mümkünse WebP veya AVIF kullanmak gerekiyor.

Özellikle mobil ziyaretçilerde fark çok daha fazla hissediliyor.

Lazy Load da uzun kategori sayfalarında işe yarıyor.

Veritabanını unutmayın​

Yeni kurulan sitede pek fark edilmiyor ama mağaza birkaç yıl çalıştıktan sonra veritabanı büyümeye başlıyor.

Siparişler, ürünler, varyasyonlar, oturumlar, geçici veriler, eklentilerin oluşturduğu tablolar...

Bir de zamanında kurulup daha sonra kaldırılan eklentilerin bıraktığı veriler var.

Özellikle sitenin ön tarafı hızlı olduğu halde WordPress yönetim paneli ağır çalışıyorsa veritabanına bakmakta fayda var.

Tabii burada rastgele tablo silmekten bahsetmiyorum. Ne olduğunu bilmediğiniz bir tabloyu silerseniz siteyi bozabilirsiniz. İşlem yapmadan önce mutlaka yedek alınmalı.

Cache kurdum, neden hâlâ yavaş?​

Bu soru da çok geliyor.

Cache faydalı ama WooCommerce'te her şeyi cache'lemek mümkün değil.

Sepet, ödeme ve müşteri hesabı gibi bölümler kullanıcıya özel çalışıyor. Bu sayfalarda cache ayarlarının doğru yapılması gerekiyor.

Yanlış yapılandırılmış bir cache sistemi bazen hız probleminden daha büyük sorun çıkarabiliyor.

Müşteri sepete ürün ekliyor ama sepet güncellenmiyor veya eski fiyat görüyor.

Bu yüzden internette gördüğünüz “şu seçeneklerin hepsini açın, siteniz uçsun” tarzı ayarları doğrudan uygulamak pek mantıklı değil.

Her WooCommerce sitesinin yapısı aynı değil.

Çok fazla varyasyon varsa dikkat​

Özellikle tekstil, yedek parça ve benzeri sektörlerde tek üründe çok fazla varyasyon oluşabiliyor.

Mesela:

10 renk × 10 beden × 5 seçenek = 500 varyasyon.

Bir üründe çok görünmeyebilir ama yüzlerce üründe bu yapı kullanılıyorsa WooCommerce'in işleyeceği veri miktarı büyüyor.

Aynı durum filtreleme tarafında da geçerli.

500 ürün bulunan mağazadaki filtre sistemiyle 30 bin ürün bulunan mağazadaki filtre sistemi aynı şekilde çalışmayabilir.

Marka, renk, fiyat, beden ve onlarca özelliği aynı anda sorgulayan filtreler büyük mağazalarda veritabanını yorabiliyor.

Yönetim paneli yavaşsa başka yere bakmak gerekebilir​

Bazen ziyaretçi tarafı gayet hızlıdır ama wp-admin sürünür.

Siparişler sayfasına tıklarsınız 5-10 saniye beklersiniz. Ürün düzenlemeye girerken aynı şekilde.

Böyle bir durumda sadece CDN veya görsel optimizasyonuyla uğraşmak çözüm olmayabilir.

WooCommerce'in arka plan görevlerine, Action Scheduler kuyruğuna, veritabanına ve kullanılan entegrasyonlara bakmak gerekiyor.

Örneğin sipariş ekranı yavaş ama ürün ekranı hızlıysa siparişlerle çalışan bir kargo veya fatura entegrasyonu sorun çıkarıyor olabilir.

Yani önce tam olarak neresi yavaş onu bulmak lazım.

CDN kullanınca site hızlanır mı?​

Hızlanabilir ama CDN sihirli değnek değil.

Ürün fotoğraflarının, CSS ve JavaScript dosyalarının farklı noktalardan hızlı şekilde sunulması özellikle farklı bölgelerden ziyaretçi alan sitelerde fayda sağlar.

Ama sunucunuz PHP tarafında sayfayı oluşturmak için zaten 4 saniye harcıyorsa CDN bunu tek başına çözmez.

Önce o 4 saniyenin nedenini bulmak gerekir.

Peki nereden başlayacağız?​

Ben olsam ilk olarak sitenin her yerinin mi yoksa belirli bölümlerin mi yavaş olduğuna bakardım.

Sonra sunucu kaynaklarını kontrol eder, kullanılmayan eklentileri kaldırır ve ağır çalışan eklenti olup olmadığını araştırırdım.

Ardından tema, görseller ve cache ayarlarına geçilebilir.

Yönetim paneli yavaşsa veritabanı ve WooCommerce arka plan işlemlerine özellikle bakmak gerekiyor.

Çok ürünlü mağazalarda filtreleme ve arama sistemi de ayrıca incelenmeli.

Kısacası site yavaşladı diye hemen yeni hosting almak veya beş tane hızlandırma eklentisi kurmak pek çözüm değil.

Önce yavaşlığın nereden geldiğini bulmak lazım.

WooCommerce aslında doğru kurulduğunda gayet hızlı çalışabiliyor. Fakat zaman içerisinde siteye eklenen her eklenti, entegrasyon ve özellik sistemi biraz daha karmaşık hale getiriyor.

Sizde durum nasıl?

WooCommerce kullanıyorsanız sitenin hangi bölümü yavaşlıyor? Ana sayfa ve ürünler mi, yoksa özellikle wp-admin ve sipariş ekranı mı?

Ürün sayınızı, kullandığınız hosting türünü ve özellikle ağır olduğunu düşündüğünüz eklentileri yazarsanız konu altında karşılaştırabiliriz.
 
Ana sayfa, kategori ve ürün sayfaları bir şekilde çözülüyor ama her seferinde ödeme sayfasında bir yavaşlama oluyor. Bende wordpress i birkaç yıldır hem öğrenip hem düzenliyorum. Woo Commerce kendi zaten ağır bir eklenti paylaşımlı bir hosting de Woo Commerce site kurmak mantıklı değil. Ben vds kullanıyorum, hız konusunda şuan için iyi gidiyor.

Eklenti olarak da wp rocket hız konusunda amatör bir wp çi olarak olmazsa olmazım oldu.
 
Ödeme sayfasında takılı kalmanız normal, orası sitenin cache'lenemeyen tek sayfası, o yüzden VDS'e geçmek de oradaki farkı kapatmıyor.
Klasik checkout'ta asıl yük wc-ajax=update_order_review isteğinde. Müşteri adres alanlarından birini her değiştirdiğinde sepet baştan hesaplanıyor ve kargo yöntemleri yeniden soruluyor. Canlı kargo entegrasyonu varsa (kargo firmasının API'si) bu istek her seferinde dışarı çıkıyor, sayfa da o kadar bekliyor. WooCommerce'in kargo oranı cache'i sepet imzası değişmediği sürece çalışıyor, adres değişince devre dışı kalıyor.
Ölçmesi kolay: DevTools > Network açıkken ödeme sayfasında bir alanı değiştirin ve update_order_review isteğinin süresine bakın. 2-3 saniye görüyorsanız sorun sunucu değil, o istek. WP Rocket'ın orada yapabileceği bir şey de yok, checkout zaten cache dışı bırakılıyor.
 

Trend içerikler

Çevrim içi üyeler

Forum istatistikleri

Konular
174
Mesajlar
278
Kullanıcılar
31
Son üye
salimdin
Geri
Üst