Nihai WordPress Hız Optimizasyonu: 2026 Eksiksiz Teknik Rehber

WordPress siteniz yavaş. Bunu siz biliyorsunuz, ziyaretçileriniz biliyor ve en kötüsü, Google da biliyor. Her bir saniyelik gecikme size dönüşümler, sıralamalar ve gelir kaybettirir. İyi haber şu ki, performans sorunlarının çoğu aynı birkaç temel problemden kaynaklanıyor ve bunları çözmek için bilgisayar bilimi diploması gerekmiyor.

Bu rehber, ağır çalışan bir WordPress sitesini tam anlamıyla bir hız canavarına dönüştürmeniz için bilmeniz gereken her şeyi kapsıyor. Hedefimiz 2 saniyenin altında yüklenme süreleri ve 90+ PageSpeed puanları. Boş laf yok, yüz kere okuduğunuz jenerik tavsiyeler yok. Yalnızca gerçekten işe yarayan, uygulanabilir teknikler.

Sitenizi düzeltelim.


WordPress’in Neden Yavaşladığını Anlamak

Eklentileri soruna rastgele yüklemeden önce, sitenizi gerçekten neyin yavaşlattığını anlamanız gerekir. WordPress’in kendisi oldukça verimlidir. Yavaşlık, üzerine eklediklerimizden kaynaklanır.

Alışılagelmiş şüpheliler:

  • Optimize edilmemiş görseller bant genişliğini tüketiyor (genellikle toplam sayfa ağırlığının -70’ini oluşturuyor)
  • Çok fazla eklenti veritabanı sorguları çalıştırıyor ve betikler yüklüyor
  • No caching forcing WordPress to rebuild pages from scratch every time
  • Asla kullanmayacağınız özelliklerle şişirilmiş temalar
  • Yıllar içinde biriken düzeltmeler, spam ve terk edilmiş eklenti verilerinden oluşan veritabanı karmaşası
  • Oluşturmayı engelleyen kaynaklar, içeriği görüntülemeden önce tarayıcıların beklemesine neden oluyor

Buradaki temel içgörü, hız optimizasyonunun tek bir şey olmamasıdır. Bu bir katmanlar bütünüdür. Optimize ettiğiniz her katman, diğerlerinden elde edilen kazanımları bileşik şekilde artırır. Harika önbellekleme yapısına sahip ama berbat görselleri olan bir site yine yavaş olacaktır. Optimize edilmiş görselleri olup hiç önbelleklemesi olmayan bir site de yine yavaş olacaktır.

You need to address all the layers.


Mevcut Performansınızı Ölçme

Ölçmediğiniz şeyi iyileştiremezsiniz. Herhangi bir değişiklik yapmadan önce, ilerlemeyi takip edebilmek için mevcut performansınızı kıyaslayın.

Gördüğünüz gibi, tema geliştiricileri olarak ürünlerimizi optimize etmeye önem veriyoruz. Aşağıda Listeo temamız için sonuçlar yer alıyor:

Gerçekten İhtiyacınız Olan Test Araçları

  1. Google PageSpeed Insights (pagespeed.web.dev), Google’ın sıralamalar için gerçekten kullandığı metrikleri verir. “Field data” bölümü gerçek kullanıcı deneyimini gösterirken, “lab data” kontrol altında yapılan test sonuçlarını gösterir. İkisi de önemlidir.
  2. GTmetrix (gtmetrix.com), tam olarak neyin ne zaman yüklendiğini gösteren ayrıntılı waterfall grafikleri sunar. Ücretsiz katman, çoğu teşhis için yeterlidir.
  3. WebPageTest (webpagetest.org), sayfanızın kare kare nasıl yüklendiğini gösteren film şeridi görünümüyle, birden fazla konumdan gelişmiş testler sunar.
  4. Query Monitor, backend hata ayıklama için kullanılan bir WordPress eklentisidir. Hangi eklentilerin yavaş veritabanı sorguları çalıştırdığını, her sayfanın kaç sorgu yaptığını ve hangi komut dosyalarının nerede yüklendiğini gösterir.
  5. Hosting Benchmark Aracı – Bu eklenti, ayrıntılı ve objektif metriklerle WordPress hosting sunucunuzun performansını kapsamlı şekilde değerlendirmenizi sağlar

Doğru Şekilde Nasıl Test Edilir

Sayfa başına en az 3 test çalıştırın ve medyan sonucu kullanın. Ağlar değişkenlik gösterir, sunucuların iyi ve kötü anları olur ve tekil testler yanıltıcı olabilir.

Kullanıcılarınızın gerçekten bulunduğu konumlardan test yapın. Hedef kitleniz Almanya’daysa, Virginia’dan test yapmak size pek bir şey söylemez.

Önce her zaman mobil performansı test edin. Google, mobil öncelikli indeksleme kullanır ve mobil puanlar neredeyse her zaman masaüstünden daha düşüktür. Mobil puanınız iyiyse, masaüstü kendiliğinden iyi olacaktır.

Değişiklik yaparken testler arasında tüm önbellekleri temizleyin. Buna WordPress önbelleği, CDN önbelleği ve tarayıcı önbelleği dahildir. Aksi takdirde eski sürümleri test etmiş olursunuz.


Önce Hosting’inizi Test Edin (Bu Hayati Önemde)

Çoğu optimizasyon rehberinin atladığı bir gerçek var: ne kadar önbellekleme, görsel sıkıştırma veya kod ayarı yaparsanız yapın, yavaş bir hostingi düzeltemezsiniz. Sunucunuzun yalnızca yanıt vermesi 2 saniye sürüyorsa, daha baştan dezavantajlı başlıyorsunuz.

Optimizasyonlara saatler harcamadan önce, hosting performansınızı kıyaslayın. Performans sınırınızın bizzat sunucu tarafından kısıtlanıp kısıtlanmadığını bilmeniz gerekir.

Hosting performansını test etmek için eklenti: https://wordpress.org/plugins/wpbenchmark/

Barındırma Performansının Düşündüğünüzden Çok Daha Önemli Olmasının Nedeni

Her sayfa isteği sunucunuzla başlar. Tarayıcı bir sayfa talep eder ve sunucunuzun şunları yapması gerekir:

  1. İsteği al
  2. PHP Çalıştır
  3. Veritabanını sorgula
  4. Yanıtı oluşturun
  5. Geri gönder

Bu, herhangi bir frontend optimizasyonu devreye girmeden önce gerçekleşir. Bu işi yapmak için 800ms süren bir sunucu, sayfanızın asla 800ms’den daha hızlı yüklenemeyeceği anlamına gelir, nokta. Öte yandan, kaliteli hosting bunu 200ms’nin altında tamamlar.

Ucuz paylaşımlı hosting ile düzgün yapılandırılmış WordPress hosting arasındaki fark, her bir sayfa yüklemesinde 500-1500 ms olabilir. Bunu eklentilerle optimize ederek ortadan kaldıramazsınız.

Barındırma Hizmetinizi Nasıl Kıyaslarsınız

Sunucunuzun gerçek performansını birden fazla bileşen üzerinden ölçmek için bir Hosting Benchmark Aracı kullanın. Basit hız testlerinden farklı olarak, doğru bir benchmark aracı WordPress’in dayandığı belirli bileşenleri stres testine tabi tutar:

  1. CPU ve Bellek – Sunucunuzun verileri ne kadar hızlı işlediğini test eder. Bu, PHP yürütme hızını etkiler ve WordPress’in sayfaları ne kadar hızlı oluşturduğunu doğrudan belirler. Araç, ham işlem gücünü ölçmek için büyük metin verileri ve rastgele ikili verilerle işlemler çalıştırır.
  2. Dosya Sistemi – Sunucunuzun diskinde okuma/yazma hızlarını test eder. WordPress sürekli tema dosyalarını, eklenti dosyalarını okur ve önbellek dosyaları yazar. Yavaş dosya sistemi = her şeyin yavaşlaması demektir. Alt testler arasında yazma yeteneği, dosya kopyalama hızı ve küçük dosya G/Ç işlemleri bulunur.
  3. Veritabanı – Bu, WordPress için çok kritik. Araç, büyük miktarda verinin içe aktarılmasını, tekil tablolar üzerinde basit sorguları ve birden fazla tabloya yayılan karmaşık sorguları test eder. Veritabanı testleriniz düşük puan alıyorsa, her sayfa yüklemesi olumsuz etkilenir.
  4. Nesne Ön Belleği – Kalıcı nesne önbelleğinin (Redis/Memcached) etkinleştirilip etkinleştirilmediğini ve ne kadar hızlı çalıştığını test eder. Alt testler, önbelleğe yazma hızını, okuma hızını ve karışık okuma/yazma işlemlerini ölçer. Nesne ön belleği devre dışı ya da yavaş görünüyorsa, önemli bir optimizasyon fırsatını kaçırıyorsunuz demektir.
  5. – Sunucunuzdan indirme hızını test eder. Bu, sunucunuzun harici kaynakları ne kadar hızlı alabileceğini ve verileri ziyaretçilere ne kadar çabuk gönderebileceğini etkiler.

Karşılaştırma Puanlarınızı Anlama

Araç size hem kategori yüzdelerini (kaç testin geçtiğini) hem de 10’a kadar bir ölçekte tekil test puanlarını verir. Genel sunucu puanınız ise her şeyi tek bir sayıda birleştirir.

Puan yorumlama:

  • 8-10: Mükemmel. Hostinginiz sağlam.
  • 7-8: İyi. Geliştirme payı var ama kullanılabilir.
  • 6-7: Orta düzey. Barındırma hizmetiniz sizi geride tutuyor.
  • Below 6: Zayıf. Cidden barındırma sağlayıcınızı değiştirmeyi düşünün.

Bu sonuçlara özellikle dikkat edin:

WordPress için en çok veritabanı puanları önemlidir. Eğer “Birden çok tabloda karmaşık veritabanı sorguları” puanı 5’in altındaysa, siteniz temel blogların ötesindeki her şeyde zorlanacaktır. WooCommerce mağazaları, üyelik siteleri ve yoğun bloglar güçlü veritabanı performansına ihtiyaç duyar.

Nesne önbelleği durumu kritik. “Sürekli (persistent) nesne önbelleği etkin” ifadesi düşük bir puan gösteriyorsa veya hiç görünmüyorsa, en büyük performans kazançlarından birini kaçırıyorsunuz demektir. Birçok bütçe dostu hosting sağlayıcısı Redis veya Memcached hiç sunmaz.

Dosya sistemi puanları önbelleklemeyi etkiler. Sayfa önbellek eklentileri binlerce küçük dosya yazar. Eğer “Small file IO test” puanı düşükse, önbelleğinizin oluşturulması ve sunulması yavaş olacaktır.

Sonuçlarınız Ne Anlama Geliyor

Sunucu puanı 7+: Hosting’iniz sağlam. Bu rehberdeki optimizasyonlara devam edin, harika sonuçlar alacaksınız.

Sunucu puanı 6: Hosting’iniz yeterli ancak zayıf noktaları var. Hangi kategorilerin en düşük puanı aldığını kontrol edin. Eğer veritabanı veya nesne önbelleği ise, bu özel optimizasyonların etkisi, hosting’i yükseltene kadar sınırlı olacaktır.

Sunucu puanı 6’nın altında: Sorun barındırma hizmetinizde. Hiçbir eklenti ayarı, temelde yavaş olan altyapının üstesinden gelemez. Şunlardan birini yapmanız gerekiyor:

  • Barındırma planınızı yükseltin (paylaşımlı → yönetilen WordPress)
  • WordPress için optimize edilmiş bir hostinge geçin
  • Doğru yapılandırmaya sahip bir VPS’ye geçin

Şu Anda Hemen Yapabileceğiniz Hızlı Sunucu Kontrolleri

  • PHP sürümünü kontrol edin (Kontrol Paneli → Araçlar → Site Sağlığı → Bilgi → Sunucu). PHP 8.3+ kullanmak kritiktir. PHP 7.4 belirgin şekilde daha yavaştır ve kullanım ömrünün sonuna ulaşmıştır.
  • Kullanılabilir belleği kontrol edin. Hosting sağlayıcınız PHP belleğini 64MB veya 128MB ile sınırlandırıyorsa, karmaşık sayfalar zorlanacaktır.
  • Sunucu konumunu kontrol edin. Sunucunuz ABD’de ancak kitleniz Avrupa’daysa, her istek Atlantik’i geçmek zorunda kalır. CDN yardımcı olur, ancak sunucunun hedef kitleye daha yakın olması daha iyidir.

Barındırıcıyı Ne Zaman Değiştirmeli

Şu durumlarda geçiş yapmayı düşünün:

  • Kıyaslama, 500ms üzerinde tutarlı TTFB gösteriyor
  • Performans testler arasında büyük ölçüde değişiyor (paylaşımlı hostingle aynı sunucuyu paylaşan istikrarsız komşu siteler)
  • Barındırıcınız PHP 8.x sunmuyor
  • Redis/Memcached nesne önbelleğe alma özelliği kullanılamıyor
  • Destek, sitenizin neden yavaş olduğunu açıklayamıyor

Bütçe barındırma ($5/ay) ile kaliteli WordPress barındırma ($25-50/ay) arasındaki maliyet farkı, performans kazanımlarıyla karşılaştırıldığında önemsiz kalır. Hız için optimize edilmiş bir siteyi yavaş bir temel üzerine kurmayın.


Önbelleğe Alma: Tek Başına En Büyük Performans Kazancı

If you do nothing else from this guide, set up proper caching. It’s the single most impactful optimization you can make.

İşte nedeni: Önbellekleme olmadan, her ziyaretçi isteği WordPress’in PHP kodunu çalıştırmasını, veritabanını sorgulamasını, sayfayı oluşturmasını ve geri göndermesini tetikler. Bu işlem en az yüzlerce milisaniye sürer ve çoğu zaman çok daha uzun zaman alır.

Sayfa önbellekleme ile WordPress sayfayı bir kez oluşturur, statik HTML olarak kaydeder ve bu önceden hazırlanmış dosyayı herkese sunar. Sunucu sadece bir dosyayı okur ve gönderir. Tek haneli milisaniyelerden bahsediyoruz.

Kullanılmaya Değer Sayfa Önbellekleme Eklentileri

  1. WP Rocket (yıllık 59$) altın standarttır. Etkinleştirildiğinde optimizasyonların ’ini otomatik olarak uygular ve en iyi kullanıcı deneyimini sunar. Bütçeniz elveriyorsa, önerim budur. WP Rocket için önerilen ayarlarımıza göz atın.
  2. LiteSpeed Cache (eğlenceli) LiteSpeed sunucuları çalıştıran bir host kullanıyorsanız en iyi ücretsiz seçenektir. Diğer ücretsiz eklentilerin ücretli sunduğu özellikleri içerir.
  3. FlyingPress ($60/yıl), mükemmel Core Web Vitals optimizasyonuna sahip, daha yeni bir alternatiftir. Daha modern bir şey istiyorsanız değerlendirmeye değer.
  4. WP Super Cache (ücretsiz) Automattic’in resmi önbellekleme eklentisidir. Hafif ve güvenilirdir, ancak özellik bakımından daha sınırlıdır.
  5. W3 Total Cache (ücretsiz) güçlü ama karmaşıktır. Yapılandırma seçenekleri yeni başlayanları bunaltabilir, ancak doğru ellerde çok yeteneklidir.

Kritik Önbellekleme Ayarları

Önbellek önceden yüklemeyi etkinleştirin. Bu, ziyaretçiler gelmeden önce arka planda önbelleğe alınmış sayfalar oluşturur, böylece hiç kimse önbelleğe alınmamış bir sayfaya denk gelmez.

Yalnızca şu durumda ayrı bir mobil önbellek oluşturun: mobil kullanıcılara farklı içerik sunuyorsanız. Siteniz duyarlıysa (aynı HTML, farklı CSS) buna gerek yoktur. Bu sadece önbellek depolama alanınızı ikiye katlar.

Dinamik sayfaları hariç tutun önbelleklemeden. Buna şunlar dahildir:

  • /cart/*
  • /checkout/*
  • /my-account/*
  • Kullanıcıya özel içerik içeren herhangi bir sayfa

Uygun önbellek süresi belirleyin. Çoğu site için 24 saat iyi çalışır. Haber siteleri daha kısa, statik siteler ise daha uzun süreler tercih edebilir.

Enable Object Caching with Redis, Memcached, or Docket

Sayfa önbellekleme, frontend isteklerini işler. Nesne önbellekleme, veritabanı sorgu sonuçlarını bellekte saklayarak backend’i yönetir.

Şöyle düşünün: Sayfa önbellekleme olsa bile, oturum açmış kullanıcılar, yönetici sayfaları ve dinamik içerik hâlâ sürekli olarak veritabanına istek gönderir. Nesne önbellekleme, WordPress’in MySQL’e (milisaniyeler) gitmeden önce belleği (mikrosaniyeler) kontrol etmesi anlamına gelir.

Buradaki püf nokta şu: Redis veya Memcached’i tek başınıza etkinleştiremezsiniz. Hosting sağlayıcınızın bunu sunucu düzeyinde desteklemesi gerekir. Barındırma kontrol panelinizi kontrol edin veya planınızda nesne önbelleklemenin mevcut olup olmadığını öğrenmek için destekle iletişime geçin. Birçok paylaşımlı hosting sağlayıcısı bunu sunmazken, yönetilen WordPress hosting ve VPS sağlayıcıları genellikle sunar.

Barındırıcınızın bunu desteklediğini doğruladıktan sonra:

  • LiteSpeed sunucuları için: LiteSpeed Cache eklentisi yerleşik nesne önbellekleme içerir
  • Redis için: Redis Object Cache eklentisini kurun
  • Memcached için: Memcached desteği olan W3 Total Cache veya benzeri bir eklenti kullanın

Redis veya Memcached yok mu? Docket Cache’i deneyin. Sunucu düzeyinde gereksinim olmadan, her tür hostingle çalışan dosya tabanlı bir nesne önbelleğidir. Redis performansına tam olarak ulaşamaz, ancak hiç nesne önbelleği kullanmamaya kıyasla çok daha iyidir ve sunucuda hiçbir ek yapılandırma gerektirmez.


Görsel Optimizasyonu: Sayfa Ağırlığını Yarıya İndirmek

Görseller genellikle herhangi bir sayfadaki en ağır öğelerdir. Optimize edilmemiş tek bir hero görseli, tüm HTML, CSS ve JavaScript kodunuzun toplamından daha ağır olabilir.

Amaç, gözle görülür kalite kaybı olmadan daha küçük dosya boyutları elde etmektir. Modern sıkıştırma yöntemleri bu konuda son derece başarılıdır.

Sıkıştırma: Kayıplı vs Kayıpsız

Kayıplı sıkıştırma, bazı görüntü verilerini kalıcı olarak kaldırır. -90 kalite seviyelerinde görsel fark insanlar için fark edilemezken, dosya boyutları -70 oranında azalır.

Kayıpsız sıkıştırma, tüm görsel verilerini korur ancak bunların depolanma şeklini optimize eder. Daha küçük kazanımlar sağlar (–30) fakat kalite kaybı kesinlikle olmaz.

Fotoğraflar ve çoğu web görseli için, -85 kaliteyle kayıplı sıkıştırma en ideal noktayı yakalar.

Görsel Optimizasyon Eklentileri

  1. ShortPixel (5.000 görsel için aylık 4,99 $) PNG sıkıştırmada mükemmeldir ve genel olarak en iyi kaliteyi sunar. Ücretsiz CDN içerir.
  2. Imagify (10.000 görsel için aylık 4,99 $) WP Rocket ile sorunsuz çalışır ve mükemmel JPG sonuçları üretir.
  3. EWWW Image Optimizer, ücretsiz yerel optimizasyon (daha yavaş, sunucu kaynaklarınızı kullanır) veya ucuz bulut işlemeyi (0,003$/görsel) sunar.
  4. Optimole, anlık optimizasyon ve yerleşik CDN ile farklı bir yaklaşım sunar. Ayda 5.000’den az ziyaretçisi olan siteler için ücretsizdir.

Bunların hepsi, yükleme sırasında görselleri otomatik olarak optimize edebilir ve mevcut görselleri toplu halde optimize edebilir. Toplu optimizasyonu, kaynak tüketimi yüksek olduğundan düşük trafik saatlerinde çalıştırın.


Doğru Yapılmış Lazy Loading

Lazy loading, kullanıcılar görsellere yakına kadar kaydırma yapmadıkça, görsellerin indirilmesini erteler. Bu, bant genişliğinden tasarruf sağlar ve ilk sayfa yüklemesini hızlandırır, ancak bir sorun var: hero görselinizi tembel yüklemek (lazy load) LCP skorunuzu öldürür. Largest Contentful Paint öğesinin anında yüklenmesi gerekir, kaydırmayı beklememelidir.

İyi optimizasyon eklentileri bunu otomatik olarak halleder.

  1. WP Rocket, ekranda ilk görünen (above-the-fold) görselleri algılar ve bunları tembel yüklemeden (lazy loading) hariç tutar. Ayrıca Ayarlar → WP Rocket → Media yolunu izleyerek belirli görselleri CSS sınıfı veya dosya adına göre manuel olarak da hariç tutabilirsiniz.
  2. Perfmatters, görselleri URL’e, sınıfa göre hariç tutmanıza veya atlanacak görsel sayısını belirlemenize olanak tanır (örneğin, “ilk 3 görseli atla”).
  3. FlyingPress, LCP görselini otomatik olarak tespit eder. LCP öğenizi belirler ve herhangi bir yapılandırmaya ihtiyaç duymadan onu tembel yüklemeden hariç tutar.
  4. LiteSpeed Cache includes an “Exclude LCP Image” option that does exactly what it says.

Eğer LCP görseliniz hâlâ tembel yükleniyorsa (lazy load) (PageSpeed Insights bu konuda sizi uyaracaktır), önbellekleme eklentinizde “lazy load’dan hariç tut” benzeri bir seçenek arayın ve hero görselinizin dosya adını veya CSS sınıfını ekleyin.



Veritabanı Optimizasyonu: Yılların Birikmiş Karmaşasını Temizlemek

WordPress veritabanları zamanla gereksiz verilerle dolar. Yazı sürümleri birikir, eklentiler geride terk edilmiş veriler bırakır ve transient’ler temizlenmeden süresi dolar. Bu şişkinlik sorguları yavaşlatır ve depolama alanını boşa harcar.

Bir Veritabanı Temizleme Eklentisi Kullanın

Eklentiler bunu güvenli ve otomatik bir şekilde hallederken SQL sorgularıyla elle uğraşmayın.

WP-Optimize (ücretsiz) en popüler seçenektir. Temizlediği öğeler:

  • Yazı revizyonları
  • Otomatik taslaklar
  • Çöpe atılmış yazılar
  • Spam ve çöp yorumlar
  • Süresi dolmuş geçici veriler
  • Sahipsiz yazı meta verisi

Temizlemeleri manuel olarak çalıştırabilir veya haftalık/aylık olarak zamanlayabilirsiniz. Ayrıca tek tıkla veritabanı tablolarını da optimize eder.

WP-Sweep (ücretsiz), ekstra özellikler olmadan yalnızca temizlik işlemlerine odaklanan daha hafif bir alternatiftir. Eğer minimal bir şey istiyorsanız iyi bir seçenektir.

Advanced Database Cleaner (pro sürümle ücretsiz) en ayrıntılı kontrolü sunar. Silinmiş eklentilerden kalan sahipsiz tabloları tespit eder ve silmeden önce tam olarak nelerin kaldırılacağını görmenizi sağlar.

Set your plugin to run automatically:

  • Haftalık: Spam yorumları, süresi dolmuş geçicileri ve çöpe atılmış öğeleri temizleyin
  • Aylık: Eski revizyonları sil, tabloları optimize et

Bundan Sonra Revizyonları Sınırlandırın

WordPress varsayılan olarak sınırsız revizyon kaydeder. Bunları temizlemek iyidir, ancak birikmesini en baştan önlemek daha iyidir.

Perfmatters’ta, bir sayı belirleyebileceğiniz (5 makul bir değerdir) veya bunları tamamen devre dışı bırakabileceğiniz bir “Limit Post Revisions” ayarı bulunur.

Bunun için eklenti kullanmak istemiyorsanız, wp-config.php dosyasına şunu ekleyin:

define('WP_POST_REVISIONS', 5);

Otomatik Yüklenen Verileri Kontrol Etme (Gelişmiş)

Bu, manuel kontrol yapmaya değer durumlardan biridir. Otomatik yüklenen seçenekler her sayfa isteğinde yüklenir ve şişmiş autoload verileri gizli bir performans katilidir.

Run this in phpMyAdmin or your database tool:

sql

SELECT SUM(LENGTH(option_value)) / 1024 / 1024 AS autoload_mb 
FROM wp_options 
WHERE autoload='yes';

Sağlıklı: 800KB altında. Sorunlu: 1MB üzerinde. Kritik: 2MB üzerinde.

Suçluları bulun:

sql

SELECT option_name, LENGTH(option_value) / 1024 AS size_kb 
FROM wp_options 
WHERE autoload='yes' 
ORDER BY LENGTH(option_value) DESC 
LIMIT 20;

Yaygın suçlular arasında eski yönlendirme kuralları, terk edilmiş eklenti ayarları ve şişkin tema seçenekleri bulunur. SQL’e hiç dokunmak istemiyorsanız, Advanced Database Cleaner Pro arayüzü üzerinden autoload sorunlarını tespit edip düzeltebilir.


Gereksiz WordPress Özelliklerini Devre Dışı Bırakma

WordPress varsayılan olarak çoğu sitenin ihtiyaç duymadığı birkaç özelliği yükler. Her biri ek JavaScript, CSS veya işlem yükü getirir.

Kolay Yol: Perfmatters Kullanın

Perfmatters (yıllık 24,95 $) tam da bunun için tasarlandı. Tek eklenti, basit anahtarlar, bitti.

Script Yöneticisi sekmesi:

  • Disable emojis
  • Disable embeds (oEmbed)
  • Disable XML-RPC
  • Disable RSS feeds
  • Disable REST API links
  • Remove jQuery Migrate
  • Remove dashicons for logged-out users

Extras tab:

  • Heartbeat control (disable, or reduce frequency)
  • Limit post revisions
  • Disable self-pingbacks
  • Remove shortlink
  • Remove RSD link
  • Disable Google Maps API
  • Disable password strength meter

Kutucukları işaretlersiniz, kaydedersiniz, bitti. Kod yok, functions.php yok, bir şeyleri bozma riski yok.

Alternatif: Önce Önbellekleme Eklentinizi Kontrol Edin

Başka bir eklenti satın almadan önce, önbellekleme eklentinizin zaten neler sunduğunu kontrol edin:

WP Rocket (Ayarlar → Ortam → Gömüler) size gömülü içerikleri devre dışı bırakma olanağı tanır.

LiteSpeed Cache (Sayfa Optimizasyonu → Ayarlama), sorgu dizelerini kaldırma, Google Fonts optimizasyonu ve heartbeat kontrolü için seçeneklere sahiptir.

FlyingPress, emojileri devre dışı bırakma, kullanılmayan CSS’i kaldırma ve JavaScript’i geciktirme seçeneklerini içerir.

Bu özelliklere zaten sahip olabilirsiniz ve bunun farkında olmayabilirsiniz.

Ücretsiz Alternatif: Code Snippets

Eğer Perfmatters satın almak istemiyorsanız ve önbellekleme eklentiniz ihtiyaçlarınızı karşılamıyorsa, küçük PHP fonksiyonlarını eklemek için ücretsiz Code Snippets eklentisini kullanın; böylece tema dosyalarınıza dokunmadan işlem yapabilirsiniz.

Heartbeat’i Devre Dışı Bırakın (veya yavaşlatın):

php

add_filter('heartbeat_settings', function($settings) {
    $settings['interval'] = 60; // Slow to 60 seconds instead of 15
    return $settings;
});

Disable Emojis:

php

remove_action('wp_head', 'print_emoji_detection_script', 7);
remove_action('wp_print_styles', 'print_emoji_styles');

Disable XML-RPC (via .htaccess is more secure):

apache

<Files xmlrpc.php>
    Order Deny,Allow
    Deny from all
</Files>

Ama dürüst olmak gerekirse, yalnızca sağladığı kolaylık ve işin doğru şekilde yapıldığından emin olma hissi için bile yılda 25 $’lık Perfmatters buna değer.


Eklenti Denetimi: Performans Katillerini Bulma

Eklentiler, WordPress performansında en büyük bilinmeyen değişkendir. Kötü kodlanmış tek bir eklenti bile her sayfa yüklemesine yüzlerce milisaniye ekleyebilir.

Query Monitor ile Yavaş Eklentileri Belirleme

Query Monitor (ücretsiz), eklenti performans sorunlarını teşhis etmek için vazgeçilmezdir. Geçici olarak kurun, sitenizde gezinin ve şunları kontrol edin:

Bileşene Göre Sorgular: Eklenti başına veritabanı sorgularını gösterir. 50+ sorgu yapan veya tekil sorguları 0.01 saniyeden uzun süren eklentileri arayın.

Betikler ve Stiller: Hangi eklentilerin JavaScript ve CSS yüklediğini ve hangi sayfalarda yaptığını gösterir. Bu, varlıkları yalnızca belirli sayfalarda gerektiğinde site genelinde yükleyen eklentileri ortaya çıkarır.

Yüksek Performans Tüketen Eklenti Kategorileri

Bazı eklenti türleri performans sorunlarıyla kötü bir üne sahiptir:

  1. Sayfa oluşturucular (Elementor, Divi, WPBakery) önemli ölçüde ek yük getirir. Kullanışlıdırlar ancak bir bedeli vardır.
  2. Sosyal paylaşım eklentileri genellikle birden fazla üçüncü taraf servisten komut dosyası yükler.
  3. Her şeyi izleyen istatistik eklentileri, veritabanını yoğun yazma işlemleriyle hırpalar.
  4. Sliderlar ve karuseller, ağır JavaScript kütüphaneleri yükler.
  5. “Hepsi bir arada” eklentiler her şeyi yapmaya çalışır ve ihtiyaç duymayabileceğiniz bileşenleri yükler.

Bu, bu eklentileri kullanamayacağınız anlamına gelmez. Sadece denge unsurlarının farkında olun.

Koşullu Eklenti Yükleme

Birçok eklenti, gerekmediği hâlde CSS ve JavaScript dosyalarını her sayfada yüklüyor. Ana sayfanızda yüklenen Contact Form 7. Blog yazılarında çalışan WooCommerce script’leri. Galeri olmayan sayfalarda açılan galeri lightbox’ları.

Asset CleanUp (ücretsiz), her sayfayı tarar ve yüklenen tüm CSS/JS dosyalarını gösterir. Belirli dosyaları sayfa bazında, yazı türüne göre veya site genelinde devre dışı bırakabilirsiniz.

Perfmatters Script Manager aynı işi daha temiz bir arayüzle yapar. Tüm script ve stil dosyalarını görebilir ve bunları anahtarlarla devre dışı bırakabilirsiniz.

Örnek tasarruflar:

  • İletişim sayfanız dışında her yerde Contact Form 7 eklentisini devre dışı bırakın
  • Mağaza dışı sayfalarda WooCommerce betiklerini devre dışı bırak
  • Disable slider scripts on pages without sliders
  • Yorumların devre dışı olduğu sayfalarda yorum betiklerini devre dışı bırak

Bu tek başına şişkin sitelerde sayfa başına 10-20 HTTP isteğini ortadan kaldırabilir.


JavaScript Optimizasyonu

Oluşturmayı engelleyen JavaScript, en yaygın performans sorunlarından biridir. Çözüm, betikleri ertelemek veya geciktirmek, böylece sayfa oluşturmayı engellememelerini sağlamaktır.

Bu durum, önbelleğe alma eklentiniz tarafından halledilir. Şu ayarları arayın:

  1. WP Rocket: File Optimization → JavaScript Files → “Load JavaScript deferred” and “Delay JavaScript execution”
  2. FlyingPress: JavaScript → “Defer JavaScript” ve “Delay JavaScript”
  3. LiteSpeed Cache: Page Optimization → JS Settings → “Load JS Deferred”
  4. Perfmatters: Assets → “Defer JavaScript” ve “Delay JavaScript”

JavaScript’i Geciktirme özellikle güçlüdür. Betiklerin, kullanıcı etkileşimi olana kadar çalışmasını engeller (fare hareketi, kaydırma veya tıklama). Analitik araçları, sohbet widget’ları ve sosyal betikler, sayfayla biri gerçekten etkileşime girene kadar çalışmak zorunda değildir.

Ertelendikten sonra sorun yaşıyorsanız: Bazı temalar ve eklentiler, ertelendiğinde bozulan kötü yazılmış JavaScript’e sahiptir. Eklentinizde, belirli betikleri normal şekilde yüklemeye devam etmek için listeleyebileceğiniz bir hariç tutma alanı bulunur. Hariç tutulması en sık gereken betik jQuery’dir.

CSS Optimization

Kritik CSS, ekranın üst kısmındaki içerik için gereken stilleri çıkarır ve satır içine yerleştirir. Geri kalan kısım ise oluşturmayı engellemeden yüklenir.

  • WP Rocket: File Optimization → CSS Files → “Optimize CSS delivery” (generates critical CSS automatically)
  • FlyingPress: CSS → “Generate Critical CSS”
  • Perfmatters: CSS → “Remove Unused CSS” (generates used CSS per page)
  • LiteSpeed Cache: Page Optimization → CSS Settings → “Generate Critical CSS”

Kullanılmayan CSS’i Kaldır özelliği ise işi bir adım daha ileri taşır. Sadece ekranın üst kısmındaki CSS’i önceliklendirmek yerine, her bir sayfayı analiz eder ve yalnızca gerçekten kullanılan CSS kurallarını içeren minimal bir stil dosyası oluşturur. Bu, şişkin tema stil dosyalarının yüklendiği sayfalarda CSS yükünü –90 oranında azaltabilir.


CDN Kurulumu: İçeriği Küresel Ölçekte Daha Hızlı Sunma

Bir CDN (İçerik Dağıtım Ağı), içeriğinizi küresel uç sunucular arasında önbelleğe alır. Ziyaretçiler, varlıkları kaynak sunucunuz yerine en yakın konumdan indirir.

Cloudflare: En İyi Ücretsiz Seçenek

Cloudflare’ın ücretsiz katmanı şunları sağlar:

  • 300+ edge lokasyonu ile global CDN
  • Ücretsiz SSL sertifikası
  • DDoS koruması
  • Temel optimizasyonlar (küçültme (minification), Brotli sıkıştırma)

Cloudflare APO (ayda 5 $) yalnızca statik varlıkları değil, tüm WordPress sayfalarını uç noktalarda önbelleğe alır. Bu, coğrafi olarak dağınık ziyaretçi kitlesine sahip siteler için tek başına en iyi performans iyileştirmesidir.

Speed → Optimization:

  • Auto Minify: Enable for CSS, JS, HTML (or disable if your caching plugin handles this)
  • Brotli: Enable
  • Early Hints: Enable
  • Rocket Loader: Disable (conflicts with most caching plugins)

Caching:

  • Caching Level: Standard
  • Browser Cache TTL: Respect Existing Headers
  • Tiered Cache: Enable

Network:

  • HTTP/3: Enable

Alternatif CDN’ler

BunnyCDN (GB başına 0,01 $’dan başlayan fiyatlarla) 119+ PoP ile mükemmel bir fiyat/performans sunar. Kolay WordPress entegrasyonu için BunnyCDN eklentisi veya CDN Enabler ile birlikte kullanın.

KeyCDN (en az $0,04/GB) gerçek zamanlı analizler ve kolay kurulum sunar.

Zaten WP Rocket kullanıyorsanız, StackPath tarafından desteklenen ve kusursuz şekilde entegre olan RocketCDN’i (ayda 8,99 $) içerir.


Sunucu Tarafı Optimizasyonları

Bazı optimizasyonlar, WordPress'in dışında, sunucu düzeyinde gerçekleşir.

PHP Version

PHP 8.2 veya 8.3, PHP 7.4’e kıyasla ’dan fazla performans artışı sunar. Sürümünüzü Panel → Araçlar → Site Sağlığı → Bilgi → Sunucu bölümünden kontrol edin.

Güncelleme yapmak bedava performans artışı demektir. Çoğu hosting, PHP sürümünü barındırma kontrol panelinizden değiştirmenize izin verir. Sadece önce eklentilerinizin uyumlu olduğunu doğrulayın (artık neredeyse kesinlikle uyumludurlar).

GZIP and Brotli Compression

Sıkıştırma, metin tabanlı dosya boyutlarını şu kadar azaltır: 70-90%.

İyi haber: Önbellek eklentiniz muhtemelen bunu hallediyordur.

WP Rocket GZIP’i otomatik olarak etkinleştirir. LiteSpeed sunucularında LiteSpeed Cache bunu kendisi yönetir. Çoğu yönetilen WordPress hostingi sıkıştırmayı sunucu seviyesinde etkinleştirir.

Sıkıştırmanın çalıştığını doğrulamak için sitenizi GTmetrix üzerinden çalıştırın. GZIP/Brotli etkinse, bunu Waterfall bölümünde Content-Encoding headers altında göreceksiniz.

Eğer sıkıştırma etkin değilse, bunu .htaccess dosyasına ekleyin:

apache

<IfModule mod_deflate.c>
    AddOutputFilterByType DEFLATE text/html text/plain text/xml
    AddOutputFilterByType DEFLATE text/css text/javascript
    AddOutputFilterByType DEFLATE application/javascript application/json
    AddOutputFilterByType DEFLATE image/svg+xml
</IfModule>

Brotli, GZIP’ten daha iyi sıkıştırma sağlar. Cloudflare, Brotli’yi ücretsiz olarak etkinleştirir. Aksi halde sunucu düzeyinde yapılandırma gerektirir.

PHP Memory Limits

Karmaşık sayfalarda beyaz ekranlar veya zaman aşımı hataları görüyorsanız, daha fazla belleğe ihtiyacınız olabilir. wp-config.php dosyasına şunu ekleyin:

php

define('WP_MEMORY_LIMIT', '256M');
define('WP_MAX_MEMORY_LIMIT', '512M');

Core Web Vitals: Google’un Önem Verdiği Metrikler

Core Web Vitals, Google’ın arama sıralamalarını doğrudan etkileyen kullanıcı deneyimi metrikleridir:

  • LCP (Largest Contentful Paint): Ana içeriğin ne kadar hızlı yüklendiğini gösterir. Hedef: ≤2,5 saniye
  • CLS (Kümülatif Düzen Kayması): Sayfa düzeninin yükleme sırasında ne kadar yer değiştirdiği. Hedef: ≤0.1
  • INP (Interaction to Next Paint): Sayfanın kullanıcı etkileşimlerine ne kadar hızlı yanıt verdiğini gösterir. Hedef: ≤200ms

LCP’yi Optimize Etme

LCP, görünür en büyük öğenin yüklenmesini ne zaman tamamladığını ölçer. Genellikle bu, ana görseliniz, bir video küçük resmi veya büyük bir metin bloğudur.

Optimizasyon eklentiniz LCP’yi otomatik olarak yönetebilir:

WP Rocket: Medya sekmesinde “Kritik görselleri önceden yükle” seçeneğini etkinleştirin. WP Rocket, LCP görselini otomatik olarak algılar ve önceden yükler.

FlyingPress: Yerleşik otomatik LCP algılama özelliğine sahiptir. Herhangi bir yapılandırma gerektirmez.

Perfmatters: Kahraman görselinizin URL’sini “Preload” alanına ekleyin veya onların Critical Images özelliğini kullanın.

Eğer PageSpeed hâlâ LCP hakkında şikayet ediyorsa, şunları kontrol edin:

  • Hero görseliniz çok mu büyük? Sıkıştırın.
  • Hero görseliniz tembel yükleniyor mu? Onu hariç tutun (lazy loading bölümünde ele alındı).
  • Sunucunuz yavaş mı? Hiçbir eklenti yavaş hostingi düzeltemez.

CLS Düzeltme

CLS, beklenmedik düzen kaymalarını ölçer. Sayfa yüklenirken öğelerin yer değiştirmesi, kullanıcıları rahatsız eder.

Görsel boyutlarını her zaman belirtin:

html

<img src="photo.jpg" width="800" height="600" alt="Description">

WordPress, 5.5 sürümünden beri Medya Kütüphanesi görselleri için bunu otomatik olarak halleder.

Dinamik içerik için alan ayırın:

css

/* Ad containers */
.ad-slot {
    min-height: 250px;
}

/* Embeds */
.video-container {
    aspect-ratio: 16 / 9;
}

Yazı tipi yükleme CLS’ye neden olur. Özel yazı tipleri yüklendiğinde metin gözle görülür şekilde yeniden akıyorsa, yazı tipiyle ilgili bir yerleşim kaymanız var demektir. Yazı Tipi Optimizasyonu bölümüne bakın.

INP’yi İyileştirme

INP, sayfanızın tüm sayfa yaşam döngüsü boyunca kullanıcı etkileşimlerine ne kadar hızlı yanıt verdiğini ölçer.

Önbellekleme eklentinizde “JavaScript’i Geciktir” özelliğini etkinleştirin. Bu, kullanıcı etkileşimi olana kadar önemsiz betiklerin ana iş parçacığını engellemesini önler.

WP Rocket: “Delay JavaScript execution” in File Optimization

FlyingPress: “Delay JavaScript”

Flying Scripts (ücretsiz bağımsız eklenti): Kullanıcı etkileşimine kadar betikleri geciktirir

Büyük DOM boyutu ayrıca INP’ye de zarar verir. Sayfanızda binlerce HTML elementi varsa (sayfa oluşturucularda yaygındır), etkileşimler yavaş ve hantal hissedilir. Mümkün olduğunca daha basit yerleşimler kullanın.


Yazı Tipi Optimizasyonu

Web yazı tipleri, performans ve görsel kararlılığı önemli ölçüde etkileyebilir. Amaç, bunları yerleşim kaymalarına neden olmadan verimli şekilde yüklemektir.

Google Fontlarını Kendi Sunucunda Barındır

Google Fonts’u doğrudan kullanmak, ek DNS sorguları ve olası GDPR uyumluluk sorunları anlamına gelir.

Otomatik olarak kendi kendine barındıran eklentiler:

  1. OMGF (ücretsiz) – Sitenizi tarar, Google Fonts yazı tiplerini indirir ve yerel olarak barındırır. Bir kez ayarlayın, gerisini unutun.
  2. WP Rocket – Media sekmesi → “Google Fonts’u yerel olarak barındır” anahtarı. Tek tık.
  3. Perfmatters – Assets → “Yerel Google Fonts” anahtarı.
  4. LiteSpeed Cache – Sayfa Optimizasyonu → İnce Ayar → “Google Fonts Async”

Kritik Yazı Tiplerini Önyükle

Önceden yükleme, tarayıcılara CSS ayrıştırma sırasında fontların keşfedilmesini beklemeden fontları erken indirmelerini söyler.

Optimizasyon eklentiniz muhtemelen bunu zaten hallediyordur:

  • WP Rocket: “CSS teslimatını optimize et” seçeneğini etkinleştirdiğinizde, katlanma çizgisinin üstünde kullanılan yazı tiplerini otomatik olarak önceden yükler.
  • Perfmatters: Add font URLs to the Preload field.
  • FlyingPress: Kritik CSS etkinleştirildiğinde otomatik yazı tipi önyükleme.

Eklentiniz bu işlemi yapmıyorsa, yalnızca manuel olarak önyükleme yapın. Bir veya iki kritik yazı tipi dosyası ekleyin (hepsini değil):

html

<link rel="preload" href="/fonts/inter.woff2" as="font" type="font/woff2" crossorigin>

Yazı Tipi Dosyalarını Azaltın

Her yazı kalınlığı ve stili ayrı bir dosyadır. Kendinize şunu sorun: gerçekten Normal, Medium, Yarı Kalın, Kalın VE İtalik stillerin hepsini kullanıyor musunuz?

Çoğu site 2-3 font dosyasıyla (Normal, Kalın, belki İtalik) idare edebilir. Tema veya font yükleme ayarlarınızda diğerlerini kaldırın.

Değişken yazı tipleri, tüm kalınlıkları tek bir dosyada birleştirir. Google Fonts, mümkün olduğunda varsayılan olarak değişken yazı tipleri sunar. Beş dosya yerine tek dosya.

Yazı Tipi Görüntüleme Ayarları

Özel yazı tipleri yüklenirken hemen yedek metni göstermek için font-display: swap kullanın (görünmez metni önler).

En iyi CLS skorları için font-display: optional kullanın. Tarayıcının özel fontu kullanmak için çok kısa bir süresi vardır; zamanında yüklenmezse, yedek font kalıcı olarak görünür. Böylece yerleşim kayması olmaz.

Çoğu font eklentisi bu ayarı seçmenize izin verir. OMGF, bir font-display açılır menüsüne sahiptir. Perfmatters, bunu her font için ayrı ayrı ayarlamanıza olanak tanır.


İyi optimize edilmiş bir WordPress sitesinin genelde çalıştığı değerler şöyledir:

Bütçe Uygunsa: WP Rocket + ShortPixel

WP Rocket (yılda 59 $), hız optimizasyonunun ’ini tek bir eklentiyle halleder:

  • Page caching
  • Browser caching
  • GZIP compression
  • JavaScript defer/delay
  • CSS optimization and critical CSS
  • Lazy loading with LCP protection
  • Database cleanup
  • Preloading and prefetching
  • Local Google Fonts

Çoğu site için yalnızca WP Rocket yeterlidir. Ayrıntılı kontrol için Script Manager’a ihtiyaç duymadığınız sürece üstüne Perfmatters kullanmanız gerekmez.

Görsel optimizasyonu için ShortPixel (ayda 4,99 $) veya Imagify (ayda 4,99 $). WP Rocket buna dahil değildir.

Bütçe Dostu Seçenek: Ücretsiz Eklentiler

Ücretsiz eklentilerle de benzer sonuçlar elde edebilirsiniz, sadece daha fazla kurulum gerekir:

  • LiteSpeed Cache veya WP Super Cache (caching)
  • EWWW Image Optimizer (image optimization)
  • Asset CleanUp (script management)
  • OMGF (local Google Fonts)
  • Flying Pages (prefetching)
  • WP-Optimize (database cleanup)

Yönetilecek daha fazla eklenti, ama sıfır maliyet.

For Debugging

Query Monitor (ücretsiz) – Sorunları tespit etmek için geçici olarak yükleyin. İşiniz bitince kaldırın.


Kaçınılması Gereken Yaygın Hatalar

Birden fazla önbellekleme eklentisi çalıştırmak – Çakışırlar. Birini seçin ve doğru şekilde yapılandırın.

Aşırı optimize etmektemel sorunları çözmeden 50 ms kazanmak için saatler harcamak. Önce yüksek etkili değişiklikler.

Mobil cihazları göz ardı etmektrafiğinizin ’ı mobilden geliyorsa masaüstü puanlarının hiçbir önemi yoktur.

Değişikliklerden sonra test yapmamak – Her optimizasyon potansiyel olarak bir şeyi bozabilir. İyice test edin.

Şişkinlik ekleyen “optimizasyon” eklentilerini kullanmak – Hız için pazarlanan bazı eklentiler aslında siteleri yavaşlatır. Öncesini ve sonrasını mutlaka ölçün.

Mükemmel puanlara takılıp kalmak – Kullanıcılar için 95 ile 100 arasındaki fark nadiren önemlidir. Asıl odak, gerçek yükleme süresi ve kullanıcı deneyimi olmalıdır.

Önce hosting’i kontrol etmemekHiçbir eklenti temelde yavaş sunucuları düzeltemez. Saatlerce optimizasyon yapmadan önce hosting’inizi kıyaslayın.

Purethemes