Web Performansı: Hız, SEO, Güvenlik

WordPress Performans Optimizasyonu

WordPress Performans Optimizasyonu rehberi: site hızlandırma, Core Web Vitals (LCP/INP/CLS), Google PageSpeed, cache, CDN, görsel optimizasyonu, minify ve gerçek hız kazandıran functions.php ayarları.

WordPress Performans Optimizasyonu

WordPress Performans Optimizasyonu

WordPress siteniz yavaşsa bunun iki sonucu olur: kullanıcı sayfayı beklemez ve site terk oranı artar; Google tarafında ise sayfa deneyimi zayıfladığı için rekabette geri düşersiniz.
Bu yüzden WordPress performans optimizasyonu “puan yükseltme” işi değil; gerçek dünyada daha hızlı açılan, daha çabuk etkileşime girilen ve daha stabil çalışan bir web sitesi oluşturma sürecidir.
Bu rehberde WordPress hızlandırma için en etkili adımları, Google PageSpeed ve Core Web Vitals metriklerine göre nasıl önceliklendireceğinizi ve sahada gerçekten işe yarayan ayarları bulacaksınız.

Önce doğru hedef: Hız puanı değil, Core Web Vitals

Kullanıcıların aradığı şey net: “Site hızlı açılıyor mu?”, “Tıklayınca gecikiyor mu?”, “Sayfa yüklenirken kayıyor mu?”.
Google’ın ölçtüğü ana metrikler de bunu anlatır:
LCP (Largest Contentful Paint) sayfadaki ana içeriğin ne kadar sürede yüklendiğini,
INP (Interaction to Next Paint) kullanıcı etkileşiminde sayfanın ne kadar hızlı yanıt verdiğini,
CLS (Cumulative Layout Shift) ise sayfanın yükleme sırasında kayıp kaymadığını gösterir.
Bu üçlü iyi değilse, “hız skoru” yüksek olsa bile kullanıcı deneyimi zayıf kalır.

LCP neden yükselir ve en hızlı nasıl düşer?

LCP çoğu WordPress sitesinde genellikle “hero görseli”, büyük banner, slider veya ilk ekranın ana görseli/başlığı tarafından belirlenir.
LCP’yi yükselten temel nedenler genelde şunlardır: ağır görsel, geç gelen font, geç yüklenen CSS/JS ve yüksek TTFB.
LCP’yi hızlı düşürmek için en etkili yaklaşım: ilk ekrandaki ana görseli optimize etmek, kritik CSS’i doğru yönetmek ve sunucu yanıtını hızlandırmaktır.

  • İlk ekrandaki ana görseli WebP/AVIF formatına çevirin, doğru boyutta kullanın
  • Gereksiz slider ve ağır kütüphaneleri azaltın
  • Font yüklemesini geciktirmeyecek strateji uygulayın (gerekirse sistem fontu)
  • Yüksek TTFB varsa cache/CDN ve sunucu optimizasyonu yapın

INP neden kötüleşir ve nasıl toparlanır?

INP çoğunlukla ağır JavaScript, fazla 3. parti script, gereksiz eklentiler ve ana iş parçacığını (main thread) meşgul eden işlemlerle kötüleşir.
WordPress dünyasında en sık sorun: “her sayfada her şeyin yüklenmesi”. Form, slider, chat, analytics, pixel, tablo, animasyon… hepsi aynı anda gelirse etkileşim gecikir.
INP’yi iyileştirmenin yolu, JS yükünü azaltmak ve sayfa bazlı yüklemeyi disipline etmektir.

  • Kullanmadığınız eklentileri kaldırın (devre dışı bırakmak çoğu zaman yetmez)
  • 3. parti scriptleri azaltın (özellikle chat/pixel/widget)
  • Kritik olmayan scriptleri geciktirin (defer/async)
  • Sayfa bazlı yükleme yapın: her sayfada aynı dosyalar yüklenmesin

CLS neden olur ve “tasarım kayması” nasıl biter?

CLS çoğunlukla boyut verilmemiş görseller, geç gelen fontlar, reklam/iframe blokları ve sonradan sayfaya eklenen bileşenlerden kaynaklanır.
En pratik çözüm: görsellere width/height vermek, font yüklemeyi kontrol etmek ve dinamik öğelere sabit alan ayırmaktır.

  • Görsellerin boyutunu sabitleyin (theme/builder bunu bazen atlar)
  • Üst kısımdaki slider/hero alanına yükleme öncesi alan bırakın
  • Font değişiminden doğan kaymayı azaltın (sistem fontu veya tutarlı font stratejisi)

WordPress’te performansın omurgası: TTFB + Cache katmanları

İnsanların “site hızlandırma” diye aradığı şeyin arkasında çoğu zaman TTFB vardır.
TTFB, sunucunun ilk byte’ı ne kadar hızlı gönderdiğini ölçer. TTFB yüksekse sayfanın geri kalanı domino gibi gecikir.
TTFB’yi düşürmenin en etkili yolu, doğru cache mimarisidir:
tam sayfa cache + object cache + doğru CDN ve doğru hosting.

1) Tam sayfa cache (Full Page Cache)

WordPress dinamik çalışır; her istek PHP çalıştırır ve veritabanı sorgusu üretir.
Tam sayfa cache aktif olduğunda, ziyaretçiye çoğu sayfada PHP çalıştırmadan hazır HTML sunarsınız.
Bu, hem TTFB’yi hem de sunucu yükünü ciddi azaltır.

  • LiteSpeed sunucuda: LiteSpeed Cache
  • Nginx/Apache üzerinde: WP Rocket, Cache Enabler, W3 Total Cache benzeri çözümler
  • CDN ile: sayfa cache + edge cache (mümkünse)

2) Object cache (Redis/Memcached)

E-ticaret, üyelik sistemi, yoğun sorgulu tema veya çok eklentili sitelerde veritabanı yükü büyür.
Object cache (özellikle Redis) tekrar eden sorguları bellekte tutarak hem TTFB’yi hem de CPU yükünü düşürür.
Bu adım, “trafik artınca site çöküyor” probleminde en hızlı toparlayan çözümlerden biridir.

3) CDN ile statik dosyaları hızlandırma

CDN, görsel/CSS/JS gibi statik dosyaları kullanıcıya daha yakın noktadan servis eder.
Bu, özellikle Türkiye dışı trafik, mobil kullanıcı ve yoğun medya içeren sitelerde büyük fark yaratır.
CDN tek başına her şeyi çözmez; ama doğru cache ile birleşince sayfa yüklenmesini ciddi hızlandırır.

Görsel optimizasyonu: WordPress hızlandırmada en büyük “hızlı kazanım”

WordPress sitelerin çoğunda en ağır yük görsellerdir. Büyük boyut, yanlış format ve yanlış sıkıştırma LCP’yi yükseltir.
Görsel optimizasyonu yaparken hedef şudur: “Gözle fark olmadan dosya boyutunu düşürmek.”

  • Format: mümkünse WebP, uygun durumlarda AVIF
  • Boyut: görseli sayfada göründüğü boyutta yükleyin
  • Sıkıştırma: kaliteyi düşürmeden optimize edin
  • Lazy load: ekran dışı görseller için uygulayın

Lazy loading doğru yapılmazsa LCP’yi bozabilir

Lazy loading iyi uygulanırsa hız kazandırır; ama ilk ekrandaki ana görseli geciktirirse LCP kötüleşir.
Kural basit: “Ekranın üstündeki kritik görsel lazy olmasın; ekran dışındakiler lazy olsun.”

CSS/JS optimizasyonu: render-blocking sorununu çözme

PageSpeed raporlarında sık gördüğünüz ifade: render-blocking.
Tarayıcı sayfayı çizmeye başlamadan önce bazı CSS/JS dosyalarını beklerse, kullanıcı beyaz ekran görür veya geç çizim yaşar.
Burada amaç: kritik CSS’i hızlı çizdirmek, kritik olmayan dosyaları geciktirmek ve gereksiz yükleri kaldırmaktır.

  • Minify: CSS/JS dosya boyutunu azaltır
  • Defer/async: kritik olmayan JS’i geciktirir
  • Kritik CSS: ilk ekranın CSS’i önden gelir, geri kalan sonra yüklenir
  • Gereksiz dosya: kullanılmayan kütüphaneler kaldırılır

WordPress’te gerçek performans ayarları: functions.php ile “yük azaltma”

Aşağıdaki ayarlar, WordPress’in her sayfada gereksiz yüklediği bazı parçaları kapatır.
Bunlar özellikle INP ve genel sayfa ağırlığı tarafında hissedilir.
Kodları tema (tercihen child theme) functions.php dosyanıza ekleyebilirsiniz.

1) WordPress emoji scripts/styles kapatma

function wp_perf_disable_emojis(){ remove_action('wp_head','print_emoji_detection_script',7); remove_action('admin_print_scripts','print_emoji_detection_script'); remove_action('wp_print_styles','print_emoji_styles'); remove_action('admin_print_styles','print_emoji_styles'); remove_filter('the_content_feed','wp_staticize_emoji'); remove_filter('comment_text_rss','wp_staticize_emoji'); remove_filter('wp_mail','wp_staticize_emoji_for_email'); add_filter('tiny_mce_plugins','wp_perf_disable_emojis_tinymce'); } function wp_perf_disable_emojis_tinymce($plugins){ if(is_array($plugins)){ return array_diff($plugins,array('wpemoji')); } return array(); } add_action('init','wp_perf_disable_emojis');

2) oEmbed / wp-embed.js kapatma

function wp_perf_disable_embeds(){ wp_deregister_script('wp-embed'); } add_action('wp_footer','wp_perf_disable_embeds',1);

3) Dashicons (ziyaretçi tarafında) kapatma

function wp_perf_disable_dashicons_front(){ if(!is_user_logged_in()){ wp_deregister_style('dashicons'); } } add_action('wp_enqueue_scripts','wp_perf_disable_dashicons_front',100);

4) Heartbeat API frekansını düşürme (admin yükünü azaltır)

function wp_perf_heartbeat_settings($settings){ $settings['interval']=60; return $settings; } add_filter('heartbeat_settings','wp_perf_heartbeat_settings');

5) Post revisions sınırlandırma (veritabanı şişmesini azaltır)

Bu ayarı wp-config.php içine eklemek daha doğrudur:

define('WP_POST_REVISIONS',10);

6) WooCommerce kullanmıyorsanız WooCommerce parçalarını her yerde yükletmeyin

WooCommerce aktifse ama her sayfada kullanılmıyorsa, gereksiz CSS/JS yükü oluşur. Burada doğru yaklaşım “ihtiyaç olan sayfalarda yükle” mantığıdır.
Tema/eklentilere göre değişeceği için, doğru handle isimleriyle sayfa bazlı kaldırma yapılmalıdır.
Mantık şu şekildedir:

function wp_perf_woo_assets_control(){ if(function_exists('is_woocommerce')){ if(!is_woocommerce() && !is_cart() && !is_checkout() && !is_account_page()){ wp_dequeue_style('woocommerce-general'); wp_dequeue_style('woocommerce-layout'); wp_dequeue_style('woocommerce-smallscreen'); wp_dequeue_script('wc-add-to-cart'); wp_dequeue_script('woocommerce'); wp_dequeue_script('wc-cart-fragments'); } } } add_action('wp_enqueue_scripts','wp_perf_woo_assets_control',99);

Veritabanı tarafı: Autoload şişmesi ve gereksiz yük

WordPress’te “yavaş admin”, “yavaş ilk byte” problemlerinin bir kısmı autoload şişmesinden gelir.
Bazı eklentiler options tablosuna büyük veriler yazar ve her sayfada otomatik yüklenir.
Burada yapılacak iş: gereksiz eklentileri kaldırmak ve ağır option kayıtlarını temizlemektir.
Bu kısım teknik olduğu için kontrol listesi:

  • Kullanılmayan eklentileri kaldırın
  • Cache eklentisi çakışması yapmayın (tek ana cache çözümü)
  • Gereksiz log tutan eklentileri sınırlandırın
  • Revizyon, transient ve çöp içerik temizliğini düzenli yapın

Sunucu ve altyapı: PageSpeed’in “gizli” belirleyicisi

En iyi optimizasyon bile zayıf bir altyapıda sınıra çarpar.
TTFB yüksekse, CPU yetersizse veya disk I/O kötüyse, WordPress performans optimizasyonu yarım kalır.
Hız açısından temel hedef: mümkün olduğunca düşük TTFB ve stabil yanıt.

  • PHP sürümü güncel olsun (hosting izin veriyorsa)
  • OPcache açık olsun
  • HTTP/2 veya HTTP/3 aktif olsun
  • CDN + cache politikaları doğru kurgulansın

Performans kontrol listesi (kısa özet)

  • Core Web Vitals metriklerini izleyin: LCP, INP, CLS
  • Önce TTFB ve cache katmanlarını kurun
  • Görselleri optimize edin, kritik görseli geciktirmeyin
  • Render-blocking kaynakları azaltın
  • Gereksiz eklentileri kaldırın, 3. parti scriptleri azaltın
  • functions.php ile gereksiz WordPress yüklerini kapatın

Sık Sorulan Sorular

WordPress performans optimizasyonu ile site hızlandırma aynı şey mi?

Yakın kavramlar ama aynı değil. WordPress performans optimizasyonu, yalnızca dosyaları küçültmekten ibaret değildir; TTFB, cache mimarisi, görsel/JS yükü, veritabanı ve altyapıyı birlikte ele alır.
Site hızlandırma ise genelde sonuç odaklı kullanılır: daha hızlı açılma, daha iyi kullanıcı deneyimi.

LCP’yi düşürmek için en etkili ilk adım nedir?

Çoğu sitede en hızlı kazanım, ilk ekrandaki ana görseli optimize etmektir: doğru boyut + WebP/AVIF + sıkıştırma.
Eğer TTFB yüksekse, ikinci kritik adım cache ve sunucu tarafıdır.

Google PageSpeed puanı yükselince sıralamam hemen artar mı?

Hız iyileştirmesi tek başına “garanti” değildir; ancak kullanıcı deneyimi ve teknik kaliteyi güçlendirir.
Özellikle Core Web Vitals tarafında iyileşme, organik performansın daha stabil hale gelmesine yardımcı olur.

Cache eklentisi seçerken en sık yapılan hata nedir?

Aynı anda birden fazla cache eklentisini aktif etmek. Çakışmalar hem performansı hem de site davranışını bozabilir.
Genelde tek bir ana cache çözümü seçip onu doğru yapılandırmak daha sağlıklıdır.

Render-blocking kaynak uyarısı her zaman kötü mü?

Her render-blocking uyarısı aynı önemde değildir. Kritik CSS’in bir kısmı doğal olarak render öncesi gerekir.
Burada hedef, kritik olmayan dosyaları ertelemek ve gereksiz yükleri kaldırmaktır.

Emoji kapatmak gerçekten hızlandırır mı?

Tek başına mucize değildir; ama gereksiz istek ve script yükünü azaltır. Performans optimizasyonu “küçük kazançların toplamı” ile büyür.

Mobil hız testi neden daha düşük çıkar?

Mobil koşullar daha sınırlıdır. Ağ gecikmesi ve cihaz gücü düşük simüle edildiği için büyük görseller, ağır JS ve render-blocking dosyalar mobilde daha fazla etkiler.
Bu yüzden mobil site hızlandırma ayrı ele alınmalıdır.

Yorum Yap

Yorumlar

  1. İlk yorumu siz yazın.