WordPress Optimizasyonu: WordPress’inizi Nasıl Hızlandırırsınız?
WordPress Optimizasyonu: WordPress’inizi Nasıl Hızlandırırsınız?

Web sitemin 4.0 sürümü itibariyle WordPress alt yapısını kullandığımı burada söylemiştim. Tabi WordPress uçsuz bucaksız bir derya. Belki hiç yazılım bilgim olmasa çok zorlanırdım. Ama daha önce, WordPress kadar iddialı olmasa da, WordPress’e benzer bir içerik yönetim sistemi yazmış birisi olarak neyse ki WordPress’i kurcalamakta, beğenmediğim yerleri değiştirmekte hatta ilave özellikler yazmakta zorlanmıyorum. Ancak fark ettim ki WordPress’e her dokunduğunuzda, içerik ekleyip güncellediğinizde, eklenti kurup kaldırdığınızda, dosyalar yükleyip sildiğinizde veri hacminiz inanılmaz ve hatta manyakça kabarıyor. Bir resim dosyası yüklemek isteseniz en az 5 farklı boyuta getirip öyle yüklüyor ve veritabanına kaydediyor. Yine yazı yazarken sık aralıklarla taslaklar kaydediliyor ve yazıyı yayınladığınızda bile o taslaklar veritabanınızda durmaya devam ediyor. Tabi bütün bu işlemler sitede bir yük oluşturuyor ve belli bir zaman sonra sitenin yavaşladığı gözle görülebiliyor. İşte bu yazıda sizlere WordPress’inizi nasıl hızlandıracağınızdan daha doğrusu en iyi duruma getirebileceğinizden (wordpress optimizasyonu) bahsedeceğim.

Yazının başlığını “WordPress’inizi Nasıl Hızlandırırsınız?” olarak belirleyince aklıma “Ejderhanı Nasıl Eğitirsin” filmi geldi. Geçen hafta sonu 6,5 yaşındaki oğlumla 3’üncüsüne gittik. Sinemada 3 boyutlu izlemek çok güzeldi. Kesinlikle izlemenizi tavsiye ederim. Neyse, konuyu, daha başlamadan dağıtmayayım ve gelelim neler yapabileceğimize…

Esas olan, web sitenizin yük hızıdır. Bir siteniz varsa bunun da hızlı bir site olması gerekir. Çünkü yavaş siteler kullanıcıları rahatsız eder ve sitenizi daha az ziyaret ederler. İkincisi, arama motorları, bu arada Google, ayrıca sıralamalarını oluştururken sitenizin hızını da dikkate alır. Bir WordPress sitesinin yükleme hızını etkileyen hosting, sayfa boyutu, veritabanına gönderilen istek sayısı gibi bir dizi etkenler vardır. Burada WordPress sitesinin yükleme hızını etkileyen ilk 5 etkeni inceleyeceğiz:

1. Hosting Sağlayıcı

İsterseniz dünyanın en iyi WordPress optimizasyonunu yapın, sitenizi iyi bir sunucuda barındırılmadığı sürece bütün bunlar yeterli olmayacaktır. Siteniz binlerce ziyaretçiyi çekiyorsa, bir İçerik Dağıtım Ağı’na (CDN) göz atmak isteyebilirsiniz. Aksi hâlde sadece iyi bir çalışma süresi ve güçlü donanıma sahip kaliteli hosting sağlayıcı yeterli olur. WordPress siteniz için bir VPS ayarlamakla ilgileniyorsanız, VPS kurulumu ile ilgili sayfalardan bilgi alabilirsiniz. Örnek olarak bir tanesine bu linkten ulaşabilirsiniz. Burada hız testi yaparak sitenizin ne kadar hızlı olduğuna dair iyi bir gösterge olabilir. Sonuçları sizinle aynı türden içerik paylaşan sitelerle karşılaştırın ve performansınızı arttırmanız gerekip gerekmediğini görün. Özel bir sunucumuz olduğunda, yüklediğimiz sayfaların gerçek boyutunu incelemek için bir sonraki adımı atabiliriz.

2. Sayfa Boyutu

Web sitenizdeki sayfalar; resimler, JavaScript, CSS, flash ve video gibi çeşitli ögelerden oluşur. Bu ögelerin toplam boyutu, sayfayı görüntülemek için tarayıcı tarafından yüklenmesi gereken toplam KB sayısını verecektir. Bu yüzden bant genişliğinden tasarruf etmek için bunu mümkün olduğu kadar azaltmamız gerekiyor. Bunu, bir bardağa huni ile su dökmeye benzetebiliriz. Bir huninin içinden herhangi bir zamanda geçebilecek su miktarı bellidir. Böylece huninin içine dökülen su miktarını azaltarak, tüm işlemi daha önce tamamlayabiliriz.

Sayfanızda kullanılan farklı ögelerin boyutlarını incelemek için her ikisi de Firefox eklentisi olan Firebug ve YSlow’u birlikte kullanabilirsiniz. Bu eklentileri kullanabilmeniz için Firefox tarayıcısına ihtiyacınız olduğu açık. Siz de benim gibi Firefox tarayıcısını uzun zaman önce bırakmış iseniz bir WordPress eklentisi olab Smush.it’i deneyebilirsiniz. Smush.it, sayfalarınıza veya yazılarınıza eklenen görüntüleri otomatik olarak sıkıştıran ve böylece site sayfalarının toplam boyutunu en aza indiren bir WordPress eklentisidir.

Sayfa boyutunu küçültmek için başvurabileceğiniz başka bir yol ise, JavaScript ve CSS gibi dosyaları seçerek yüklemektir. Özellikle JavaScript ve CSS dosyalarını yüklerken seçici olun. Örneğin, bir iletişim formu eklentisi kullanıyorsanız ve yalnızca ‘İletişim’ sayfasındaki iletişim formunu kullanıyorsanız, eklentinin JS ve CSS dosyalarını sitenizin her sayfasına yüklemenin sizin için bir faydası yoktur. Bu nedenle, WordPress’in sunduğu bütün imkânları kullanarak yalnızca ‘İletişim’ sayfasındaki iletişim formu eklentisi için gereken dosyaların iletişim sayfasında yüklenmesini sağlayın.

Bir örnek…

Örneğin sitemin ana sayfasında el yazısı sitili ile yazının yer aldığı bir alıntı alanı mevcuttur. Buradaki el yazısı için gerekli olan CSS dosyasını WordPress’e sadece ana sayfada yükletiyorum. Bu el yazısı sitili için gerekli olan CSS dosyasını örneğin bu yazının yer aldığı bir sayfada yükletmenin bir anlamı olmayacaktır. Maalesef şu anda pek çok eklentinin ya da temanın seçici yükleme seçeneği sunmadığının farkındayım. Bununla birlikte, kendiniz ilave kod yazarak dosyalarınızın seçici yüklemesini sağlayabilirsiniz. Bunu yaparken WordPress’in is_home() , is_admin() gibi koşul içerek fonksiyonları işinizi kolaylaştıracaktır.

Son olarak, mümkün olduğunca sayfanın başına CSS dosyalarını ve sayfanın sonuna JavaScript dosyalarını yükleme yöntemini kullanın. Çünkü sayfanın görünümü için CSS gereklidir ve bu nedenle ilk önce yüklenir. JavaScript ise sayfanın davranışlarıyla ilgilidir ve genellikle daha fazla bant genişliği kullanır. Dolayısıyla ilk olarak sayfanızı tüm görselliği ile ziyaretçiye sunduğunuzda daha sonra JavaScript’in yüklenmesi ziyaretçide bir rahatsızlığa neden olmaz. Zira çok büyük ihtimalle fark etmez. İdeal olarak sayfa boyutunuz 50KB’nin altında olmasına da ayrıca dikkat edin.

Sayfanızın boyutunu ideal seviyeye getirmek için kullanabileceğiniz araçlar: Firebug, YSlow, WP Smush.it

3. Veritabanı İstek Sayısı

Bir WordPress sitesi, herhangi bir sayfa yüklemek için yaklaşık 25 sorgudan fazlasını yapmamalıdır. Bu yüzden sayıyı aşağıda tutmaya çalışın. Çok fazla sorgu yapıldığını gözlemlerseniz, işe herhangi bir eklentinin çok sorgulama yapıp yapmadığını kontrol ederek başlayın. Maalesef, bazı eklentiler iyi bir şekilde tasarlanmamıştır ve sitenizi gereksiz birçok istekle yükleyebilir. Eğer böyle bir eklenti ile karşılaşırsanız, eklentiyi yazan kişilere e-posta göndermekten çekinmeyin. Zira en fazla cevap vermezler, siz de başka bir alternatif ile yolunuza devam edersiniz. Buradaki binlerce eklentiden bir tanesi muhakkak sizin işinizi görecektir. Şayet kod yazmakla aranız iyi ise eklentiyi kendinizin iyileştirmesi de güzel bir fikir olabilir. Nitekim kod renklendirmek için çok fazla gereksiz işlem yapan bir eklentiyi yeniden yapılandırırken tıkandığım bir hususta eklentinin yazarına e-posta göndermiştim. Dönüş yapmayınca üç dört farklı eklentinin beğendiğim özelliklerini alıp kendim bir tane yazmaya başladım. Adını da “B&D Syntax Highlighter” koydum. İyi bir seviyeye getirdiğimde inşallah burada paylaşmayı umuyorum.

Bütün bunların yerine kullanışlı bir araç arıyorsanız P3 (Plugin Performance Profiler) adlı eklentiyi de kullanabilirsiniz. Bu eklenti, sitenizin yüklenme süresi üzerindeki etkilerini ölçerek WordPress sitenizin eklentilerinin performansının bir profilini oluşturur. Çoğu zaman, WordPress siteleri, kötü yapılandırılmış eklentiler nedeniyle ya da çok fazla eklenti olduğu için yavaş yüklenir. P3 eklentisini kullanarak sitenizde yavaşlamaya neden olan herhangi bir şeyi daraltabilirsiniz.

Sitenizin performans ölçümleri için kullanabileceğiniz araçlar: Debug Queries, P3 (Plugin Performance Profiler)

4. Veritabanı Optimizasyonu

Zaman içinde, WordPress veritabanınız “işletim yükü (overhead)” olarak adlandırılan şeyi üretebilir. Bu durum birleştirilen bir sabit sürücüye benzer. Neyse ki bunu otomatik olarak düzelten eklentiler var. Hem WP Database Optimizer hem WP-DBManager WordPress veritabanınızın otomatik bakımını ve optimizasyonunu planlamanıza olanak tanıyan iki güzel eklentidir. Tabi WP Database Optimizer eklentisinin zamana yenik düşmek üzere olduğu göz ardı edilmemelidir.

WP-Optimize, yazı revizyonları veya spam yorumları silme yeteneği de dahil olmak üzere size daha fazla özellik sunar. Bu arada bir çalıştırmak için iyi bir eklenti olabilir. Maalesef herhangi bir zamanlama özelliği yoktur. Yazı revizyonlarını neden silelim ki diye sorabilirsiniz. Örnek vermek gerekirse, yaklaşık 100 KB olan bir yazıya sahipseniz ve o yazı için 5 revizyonunuz varsa, harcanan toplam alan yaklaşık 500 KB’dir. Buna benzer 100 yazınız varsa, boşa harcanan 50 MB veritabanı alanınız vardır. Bunu istemiyoruz, revizyon sonrası yazıyı yayınladığınız zaman önceki tüm revizyonları silmeniz gerekir. O yüzden bu eklentiyi arada bir çalıştırın. WPMU.org sitesinde yer alan bu makale WordPress veritabanı optimizasyonu ve onarımı konusunda daha fazla bilgi vermesi bakımından faydalıdır. Adamlar veritabanı optimizasyonu konusuna fena hâlde takılmış durumdalar. Bunu yazılarında “veritabanı optimizasyonu” şeklinde arama yaparak anlayabiliyoruz.

WordPress veritabanı optimizasyonu için kullanabileceğiniz araçlar: WP-Optimize, WP Database Optimizer, WP-DBManager

5. Önbellekleme ve Minimize Etme

İyi bir önbelleğe alma ve optimize etme eklentisi, WordPress site hızına çok iyi bir katkı sağlar. Şu anda en iyi WordPress önbelleğe alma eklentisi W3 Total Cache‘dir. Bu eklentiyi uyguladıktan sonra WorPress sayfa yükleme süresinin 3 saniyeden yarım saniyeye kadar indiğini söyleyenler bile var. WPBeginner.com sitesinde yer alan bu makale, W3 Total Cache programını kurma konusunda mükemmel bir eğitim sunuyor.

Önbellekleme ve minizimize etmek için kullanabileceğiniz araç: W3 Total Cache

Sonuç

Yukarıdaki önerileri uygulamak, gayet iyi optimize edilmiş bir WordPress web sitesine sahip olmanıza yardımcı olur. WordPress sitenizi ne kadar optimize edildiğini anlamak için bu yazıda belirtilen 5 noktadan her birinde gösterilen önerileri uyguladıktan sonra sitenizi test edin.

Bu kılavuzun yardımcı olacağını umuyorum ve kaçırdığım WordPress optimizasyon ipuçları varsa, yorum bölümünde bana iletirseniz çok memnun olurum.

Sağlıcakla kalın…

Habip Oğuz

Kod yazmak onun için nefes almak... Daha fazla bilgi için buraya tıklayın.

Cevapla