Eklenti yükünden, güvenlik güncellemelerinden ve yavaş açılıştan kurtulmak için siteyi Astro ile statik hale getirdim.
Bu site 2020’den beri WordPress üzerindeydi. Hazır bir tema, bir slider eklentisi, bir site haritası eklentisi, bir iletişim formu eklentisi… Her biri tek başına makul, ama toplamda birkaç sayfalık bir kişisel site için fazla ağır bir yapı ortaya çıkmıştı.
Neydi sorun?
Hız. Ana sayfa açılırken tema dosyaları, slider eklentisinin betikleri ve stilleri, fontlar ve görseller birlikte yükleniyordu. İçerik birkaç paragraf olmasına rağmen tarayıcı çok daha fazlasını indiriyordu.
Bakım. Eklentiler ve tema düzenli güncelleme istiyor. Güncellemeyince güvenlik riski oluşuyor, güncelleyince bazen bir şey bozuluyor. Kullanmadığım bir site için sürekli bakım yapmak zorunda kalıyordum.
İçerik. Sayfada gerçek işlerim yerine şablondan kalma alıntılar vardı. Google Play’deki uygulamalarım sitede görünmüyordu.
Yeni yapı
Siteyi Astro ile yeniden kurdum. Astro sayfaları derleme anında HTML’e çeviriyor. Sunucuya yüklenen şey düz HTML ve tek bir CSS dosyası. Veritabanı yok, PHP yok, güncellenecek eklenti yok.
Birkaç tercih:
- Tailwind CSS ile stil. Kullanılmayan kurallar derlemede atılıyor.
- Etkileşim gereken yerde React, gerisinde sıfır JavaScript. Ana sayfadaki sık sorulan sorular bölümü ekrana geldiğinde yükleniyor. Teknoloji şeridi ise tarayıcıya hiç betik göndermeden, sadece CSS animasyonuyla çalışıyor. İkisi de açık kaynak Watermelon UI bileşenleri.
- İçerik Markdown dosyalarında. Yeni blog yazısı eklemek için bir dosya oluşturmak yeterli.
- İletişim formu için harici servis. Form gönderimi e-postama iletiliyor, sunucuda kod çalıştırmam gerekmiyor.
Taşırken dikkat ettiğim tek şey: adresler
Uygulamalarımın gizlilik politikası ve hesap silme sayfaları Google Play Console’da kayıtlı. Bu adreslerin bir karakteri bile değişirse Play’in incelemesinde sorun çıkabilir. Bu yüzden /fallaai/gizlilik-politikasi/ gibi tüm adresleri birebir aynı bıraktım. Eski blog adreslerini ve WordPress’e özgü yolları da 301 yönlendirmesiyle yeni sayfalara bağladım, böylece Google’daki eski linkler boşa düşmüyor.
Sonuç
Site artık birkaç yüz kilobayt. Hosting tarafında özel bir şey gerektirmiyor, istersem ücretsiz statik barındırma servislerine de taşıyabilirim. En önemlisi, bakımı için ayrıca zaman harcamam gerekmiyor.
Sizin de ağırlaşmış bir WordPress siteniz varsa benzer bir taşıma yapabiliriz.