Merhaba, bu makalemde sizlere WordPress alt yapısıyla çalışan blogunuzu nasıl hızlandırabileceğinizi anlatacağım. İnternette dolaşırken birçok web sitesine giriyoruz. Bazıları anında açılıyor, bazılarını ise uzun bir süre beklemek zorunda kalıyoruz. Yapılan bir araştırmaya göre ziyaretçilerin sayfa yüklenmesini bekleme süresi ortalama 4 saniye. Bu 4 saniyede sayfanız açılmazsa ziyaretçilerinizin %25‘ini kaybediyorsunuz demektir. Sayfanız ne kadar geç açılıyorsa o kadar çok ziyaretçi kaybediyorsunuz.
Diğer yandan, eğer sitenize mobil üzerinden de ziyaretçi çekmeyi planlıyorsanız sitenizin çok daha hızlı açılması gerekiyor, çünkü mobildeki bağlantı hızı çoğu zaman normal internete göre daha yavaş oluyor. Peki wordpress sitenizi nasıl hızlandırabilirsiniz? Sitenizin 2 – 3 saniye içerisinde açılmasını nasıl sağlayabilirsiniz?
Yapabileceğiniz işlemleri madde madde anlatmaya çalışcağım. Madde başlıklarının altında, maddenin zorluk derecesini bulabilirsiniz. 50/100 ve üzeri zorluklar teknik bilgi gerektirir. Tüm maddeleri uygulamaya çalışmayın. Çünkü eğer siteniz zaten 4 – 5 saniyede açılıyorsa, bir iki maddeyi tamamladığınızda hedefe ulaşmış olacaksınız. O yüzden tekrar söylüyorum hepsini uygulamanıza gerek yok. Ayrıca ufak bir not da eklemek istiyorum, aşağıdaki maddeleri uyguladığınızda sitenizin seo puanı da yükseleceğinden Google arama sonuçlarında da birkaç sıra yükselebilirsiniz.
Öncelikle sitenizin mevcut performansını ölçün derim. Pingdom Website Speed Test sitesini kullanarak sitenizin mevcut açılış hızını test edebilirsiniz. Testinizi tamamladıysanız şimdi maddelerimize geçelim…
1. Lazy Load kullanın
Zorluk: 10/100
Lazy load ne demek? Aşağı doğru uzun bir sayfanız olduğunu düşünün ve sayfanızda bolca resim mevcut. Ziyaretçi sayfayı ilk açtığında alttaki resimlerin yüklenmesine gerek yok, değil mi? Sadece ilk görünen alandaki resimlerin yüklenmesi yeterli. Ziyaretçi sayfayı aşağı kaydırdıkça diğer resimler de otomatik olarak kendiliğinden yüklenmeli. Bu işleme lazy load denir. WordPress blogunuzda bunu çok kolay bir şekilde uygulayabilirsiniz. Lazy Load isimli eklentiyi yüklemeniz yeterli. Başka hiçbir şey yapmanıza gerek yok.
2. Html çıktınızı gzip ile sıkıştırın
Zorluk: 10/100
WordPress’in üretmiş olduğu html çıktınızı ziyaretçinize gönderirken sıkıştırark gönderin. Yapmanız gereken tek şey GZippy eklentisini yüklemek.
3. Resimlerinizin boyutunu küçültün
Zorluk: 20/100
Resimler, web sitelerinin olmazsa olmaz elemanlarıdır; ancak çok fazla resim kullandığınızda sayfanız açılmaz hale gelir. Sayfalarınızda kullandığınız resim sayısını optimize ettikten sonra bu resimlerin boyutlarıyla da oynamak gerekebilir. En çok kullanılan resim formatı olan .jpg size sıkıştırma avantajı sağlar. Sıkıştırırken kaliteden ödün verirsiniz; ancak çok abartmadığınız sürece bu farkı kolay kolay kimse anlamaz. Ben bu işlem için Irfan View adlı ücretsiz yazılımı kullanıyorum. Resmi açıp farklı kaydet dedikten sonra sıkıştırma oranını resme göre bazen %70 bazen %80 olarak ayarlıyorum. Bu işlem sonucunda örneğin 100 Kb boyutundaki bir resim 30 – 40 Kb seviyesine kadar düşüyor. Dolayısıyla 3 – 5 resim olduğunda çok fazla fark ediyor.
4. Style.css dosyanızı sıkıştırın
Zorluk: 30/100
Temanızın yüklü olduğu dizinde bulunan style.css dosyasını sıkıştırarak biraz daha hız kazanabilirsiniz. Bu işi yapan online birçok site mevcut. Ben cssminifier.com sitesini kullanıyorum. Dosyanızın içeriğini yapıştırıyorsunuz, size sıkıştırılmış halini üretiyor. Ürettiği bu metni alıp style.css dosyanıza yapıştırıyorsunuz ve dosyanızı sunucunuza gönderiyorsunuz. Bu kadar.
5. Html çıktınızı minify edin
Zorluk: 50/100
Bir önceki maddede belirttiğim işlemin html üzerine uygulanması; ancak tabi html sürekli değiştiğinden bunun çözümü biraz daha farklı. WordPress eklentisi olan W3 Total Cache‘i kurabilirsiniz. Bu eklentinin birçok özelliği mevcut. Bir süre kullandıktan sonra yarardan çok zarar getirdiği kanaatindeyim. O yüzden eklentinin sadece html minify özelliğini etkinleştirip diğer tüm özelliklerini kapatmanızı tavsiye ederim veya sadece html minify yapan başka bir eklenti kullanın.
6. Inline css’ten kaçının
Zorluk: 50/100
Birçok tema ve eklenti içerisinde inline css mevcut. Inline css’ten kasıt: <span style=”…”>. Bu kullanımı mümkün olduğunca en aza indirmeye çalışın. Eklentilere çok dokunmanızı tavsiye etmem; ancak temanızda böyle kullanımlar varsa bunları düzeltin. Peki nasıl düzelteceksiniz? Çok basit, <span style=”…”> içerisindeki stil tanımlarını temanızın style.css dosyasına yeni bir class olarak ekleyin. Daha sonra <span style=”…”> yerine <span class=”…”> kullanın. Böylece performans artışı sağlayacaksınız.
7. Javascript dosyalarını kendi sunucunuza alın
Zorluk: 60/100
Eklentilerin veya temanın kullandığı bazı javascript dosyaları farklı sunucularda olabilir. Bu sunuculara erişim, sitenize ekstra zaman kaybettirir. Dolayısıyla bu dosyaları kendi sunucunuza yükleyin ve .js dosyasını kullandığı yerin sizin sunucunuzdaki dosyayı kullanacak şekilde değiştirin.
8. Tablo yerine div kullanın
Zorluk: 70/100
Güncel bir çok tema bu şekilde yazılıyor artık. Eğer temanızda bol bol <table> kullanılmışsa temanızı değiştirmeyi düşünmelisiniz.
9. CDN kullanın
Zorluk: 80/100
CDN nedir? CDN (Content Delivery Network), sitenizdeki statik yani kolay kolay değişmeyen nesneleri depolayabileceğiniz bir sunucudur. Bir CDN servisine üye olduğunuzda, sitenizdeki resimler, javascript dosyaları ve css dosyaları gibi sabit olan nesneler CDN servisine aktarılır. Daha sonra bir ziyaretçi bu dosyalardan birine erişmek istediğinde CDN üzerindeki dosya iletilir. Bu da size hem performans hem de bandwidth kazandırır.
Çalışma mantığını biraz daha detaylı anlatayım. Öncelikle bir CDN servisine üye oluyorsunuz. Piyasada birçok servis mevcut. En bilindik olanı Facebook’un da kullandığı Akamai. Yalnız bu büyük servisler doğal olarak ücretli. Benim şu anda kullanmakta olduğum (oldukça da memnun olduğum) CDN servisi ise CloudFlare. Bunun da ücretli versiyonu mevcut ama ücretsiz versiyonu işinizi görüyor. Siteye üye olduktan sonra isim sunucularınızı (nameserver) değiştirmeniz isteniyor. Size iki adet nameserver adresi veriliyor ve siz de bu adresleri hosting firmanız üzerinde güncelliyorsunuz. Hepsi bu kadar. Sitenize ziyaretçi girdikçe CloudFlare gerekli gördüğü dosyaları kendi ön belleğine alıyor ve bir başkası bu dosyayı istediğinde kendi belleğinden iletiyor. CDN servisleri üst seviye DNS bölgesinde yer aldığından, DNS çözümlemesi çok daha hızlı yapılıyor. Dolayısıyla içerikleriniz ziyaretçilerinize çok daha hızlı ulaşıyor.
10. Javascript dosyalarını birleştirin ve paralel yükleyin
Zorluk: 100/100
Çok fazla javascript demek yavaş açılış demek. Çok fazla javascript kullanan eklentiniz varsa kaldırmayı düşünün derim. Kalan javascript dosyalarını da tek dosyada birleştirmeye çalışın; ancak bu işlem çok tehlikeli. Çoğu zaman bazı eklenti veya işlevlerin çalışmasını etkiliyor. Eğer kodlama konusunda uzman iseniz bu seçeneği yapın, aksi taktirde okumaya devam edin.
Javascript dosyaları normal şartlar altında sıra ile yüklenir. 10 dosyanız varsa tek tek yüklenmesini beklersiniz; ancak bu yükleme işini paralel hale getirebilirseniz, açılış hızınız artacaktır. Bir önceki maddede bahsetmiş olduğum CloudFlare CDN servisini kullanırsanız, bu paralel yükleme işini kolayca halledebilirsiniz. Henüz beta aşamasında olan paralel javascript yükleme desteğini, Performans Ayarları altında Rocket Loader‘ı etkinleştirerek açabilirsiniz.
Benim aklıma gelen ve uyguladığım yöntemler bu şekilde. Son olarak birkaç ufak şeye değinmek istiyorum. Ana sayfanızda çok fazla gönderi bulundurmayın ve mümkünse “Devamını Oku” seçeneğini kullanın. Ana sayfadaki gönderi sayınız (bence) 10’u geçmemeli. Diğer yandan sitenizi mümkün olduğunca W3C standartlarına uydurmaya çalışın. W3C validator sitesine girip web sitenizin adresini yazdıktan sonra, eğer hatalar çıkmışsa onları düzeltmeye çalışın. Hatalı kod, hem sayfanızın görünümünü bozabilir, hem sayfanızın geç yüklenmesine sebep olabilir, hem de Google arama sonuçlarındaki sıranızı etkileyebilir. Bir sonraki makalede görüşmek üzere…