Yanlış düşünüyorsunuz. Hepsini seçip optimizasyon yapılır. Eğer hata oluşursa teker teker seçimler kaldırılıp kontrol edilir. Mantık basit. Js ve Css neden küçültüp birleştirilmesin? Defer neden etkinleştirilmemeli? Veya geciktirme neden zararlı olsun? Bunları açıklayabiliyor musunuz? Yanlış olan hepsini seçmek değil, hepsini seçme işlemini ezber şekilde tüm sitelere yapmaktır. Yanlış noktaya değinmişsiniz.
Biri çıkıp da argümanlarımı eleştirsin diye bekliyodum. O yüzden düşüncelerinizi paylaştığınız için teşekkür ederim.
Ama umarım bir tema satıcısı olarak bu konulara gerçekten bu şekilde bakmıyorsunuzdur. Yoksa durum vahim.
1- CSS ve JS küçültülmesi artık neredeyse gerek yok.
Artık eklenti ve temalar yeni sürüm güncellemelerinde dosyaları minify ederek yüklüyor. ( örn. style.min.css )
Bu arada küçültülme işlemi nedir derseniz, dosyadaki yorum satırları ve boşlukları kaldırıyor. Tüm olayı bu aslında.
Fakat kullandığınız tema veya eklenti vasat bir şekilde kodlanıp, geliştirilmiyorsa o zaman küçültülebilir.
Ben CSS ve JS asla küçültülmemeli demiyorum. Nitekim son zamanlarda css ve js küçültme gereksinimi neredeyse kalmadı.
Zaten analiz araçlarında çıksa çıksa 1-2 dosya küçültme uyarısı verir. Elde edeceğiniz tasarruf tahminimce 50kb aşmaz.
Buradan max 50kb dosya tasarrufu etmek için bütün dosyalarınızın işlemden geçmesinin siteye maliyeti daha fazladır.
Ve her önbellek temizlendiğinde minify işlemi tekrar baştan yapılır. Kısacası bu işlemci yüküne değmeyeceğine emin olabilirsiniz.
Sadece 2 dosyanın küçültülmesi için diğer gerek olmayan dosyaların da elden geçirilmesi tamamen mantıksız.
Bu eskiden mantıklıydı. Çünkü birçok dosya sıkıştırılmadan sunuluyordu kullanıcılarına. Şimdi öyle değil.
Eğer satışını yaptığınız temadaki dosyaları sıkıştırmadan sunuyorsanız, o zaman evet sizin kullanıcılarınız var gücüyle sıkıştırma yapmalıdır.
2- CSS ve JS birleştirilmemeli. Sonuna kadar arkasındayım.
Daha ortada http2 yokken dosyalar sırayla yükleniyordu. Bir dosyanın yüklenmesi tamamlanmadan diğerine geçilmiyordu.
Http1 böyle bir bağlantı protokolüydü işte. Ve bu durumda dosyaları tek bir dosyada toplamak hızda avantaj sağlıyordu.
Nitekim şimdi http2 ve http3 bu dosyaları ayrı olarak asimetrik yükleyebiliyor. O yüzden tek 1 dosyada birleştirirseniz bu nimetten faydalanamazsınız.
Ve sitenizin açılıp bütünü tamamlanması daha fazla zaman alır.
Aynı zamanda bir temada özellikle stillerin parça parça farklı dosyalarla yüklenmesi tasarımın daha erkenden oluşmasını sağlar.
Önce üst kısım stilleri yüklendiğinde kullanıcı sitenin açıldığı izlenimine erkenden varır.
TTI erkenden tamamlanır ve sitenin daha altında olan öğeler biraz sonra da yüklense olur. Bunlara hakim olamamanız üzdü gerçekten. Neyse...
Ek olarak bütün stilleri tek bir dosyada toplarsanız tasarımların bozulması muhtemeldir.
Özellikle dinamik bir işlemde sadece ilgili css dosyası çağrılması gerektiğinde siz dosyaları birleştirdiğiniz için işinize yaramayan kodların olduğu tüm dosya çağırılır.
Diyelim ki 15 farklı css dosyası var. Hepsini bir dosyada toplarsanız 500kb aşıyor diyelim.
Site açıldığında bu 500kb yüklenmeden hiçbir görüntü oluşmaz. Ama her bir dosya ayrı olursa tek bir dosya boyutu çok düşü olacağı için.
Erkenden görüntü oluşarak yüklenme hızla tamamlanır. İşte bu http2 sonrası gelişmeler ve yeni sayılmaz. Takip etmeniz gerekirdi diye düşünüyorum.
JS dosyalarını da aynı mantıkta düşünebilirsiniz. O yüzden http2 yani ssl olan siteler (neredeyse tüm siteler) dosyaları birleştirmemeli.
3- Defer veya delay etkinleştirilmemeli demedim. Defer ve delay aynı anda etkinleştirilmemeli dedim.
Temanızın kaç kullanıcısı var bilmiyorum ama ben 600'e yakın siteyi ve birçok farklı temayı optimize ettim.
Defer ve delayin aynı anda kullanıldığında işlemci yükü oluşturduğunu bizzat gördüm. Bu işlemci yüküne oranla yaptığı optimizasyona değmiyor.
Bir dosyayı hem erteleyip, hem geciktirmek zaten biraz da mantığa aykırı. Nitekim çok js kaynağı olmayan, işlemcisi de yeterli olan sitelerde kullanılabilir.
Yine de dar boğaz oluşturması muhtemel olduğunu bilerek bunu yapın. Siteniz 3-5 girişte normal şekilde açılabilir. Ama 6. seferde darboğaz yüzünden belli bir süre geç açılabilir.
Yani defer delay aynı anda kullanıldığında hızın stabil olmama durumu var. Özellikle yüksek ziyaretçili sitelerde çökmelerin yaşandığını gördüm. (anlık 10k üstü trafikte bunu deneyim ettim)
Daha başka sorularınız varsa cevaplayabilirim.
Bir tema üreticisi olarak zaten söylediklerimi rahatlıkla anlayabileceğinizi düşünüyorum.
Yine de argümanlarımı devam ettirmemi isterseniz belirtin. Deneyimlerimi paylaşmaktan mutluluk duyarım
@bilimokur;