Anasayfa Projeler Yaklaşım Blog İletişim
Tüm yazılar

WordPress Yetmediğinde: Özel CMS'e Ne Zaman Geçilir?

WordPress'in gerçekten duvara tosladığı 6 senaryo ve özel CMS geçişinin neye mal olduğu. Eklenti yığınıyla ayakta duran siteler için.

WordPress Yetmediğinde: Özel CMS'e Ne Zaman Geçilir?

WordPress'e karşı değilim. İnternetin ciddi bir bölümünü taşıyan, olgun bir sistem ve çoğu proje için fazlasıyla yeterli. Ama danışmanlık verdiğim projelerin bir kısmında WordPress artık çözüm değil, sorunun kendisi oluyor. Bu yazı o eşiğin nerede olduğu hakkında.

Duvara toslama belirtileri

1. Eklenti bağımlılık zinciri

Site 30+ eklentiyle ayakta duruyorsa ve bunların bir kısmı birbirine bağımlıysa, artık bir web siteniz yok — bir bakım yükünüz var. Kritik eşik şudur: bir eklentiyi güncellemekten korkuyorsanız, sistem sizi yönetmeye başlamış demektir.

2. Veri modeliniz sayfaya sığmıyor

WordPress dünyayı "yazı" ve "sayfa" olarak görür. Custom post type ve meta alanlarla bunu esnetebilirsiniz; ben de sık sık esnettim. Ama iş şuraya gelirse durun: birbiriyle ilişkili 4-5 varlığınız var (bayi → sipariş → ürün → sevkiyat → fatura), aralarında kural var, ve bu ilişkileri meta alanlarla taklit ediyorsunuz. Bu noktada ilişkisel veritabanına ait bir işi, ilişkisel olmayan bir yapıya zorluyorsunuz. Sonu iyi bitmez.

3. Yetki seviyeleri karmaşıklaştı

"Bölge müdürü sadece kendi bayilerinin siparişlerini görsün, fiyatı değiştiremesin ama iskonto önerebilsin." Bu cümleyi eklentiyle çözmeye çalışmak, üç ay sonra kimin neyi görebildiğini kimsenin bilmediği bir sisteme dönüşür. Yetkilendirme, sonradan eklenen değil baştan tasarlanan bir şeydir.

4. Performans tavanı

Önbellek eklentisi, CDN ve daha güçlü sunucuya rağmen sayfalar hâlâ yavaşsa, sorun kaynakta olabilir. Her istekte onlarca eklentinin yüklendiği, düzinelerce sorgu çalıştığı bir yapıda optimizasyonun bir sınırı vardır. Bu konuyu performans yazısında ayrıntılı ele aldım.

5. Güvenlik yüzeyi

Her eklenti, kendi güncelleme disiplini olan üçüncü taraf koddur. Popülerlik aynı zamanda hedef olmak demektir. Hassas veri işleyen bir sistemde — kişisel veri, ödeme, sağlık — saldırı yüzeyini daraltmak teknik değil hukuki bir gerekliliktir.

6. Editör deneyimi çöktü

İçerik ekibi paneli kullanmayı bırakıp size e-posta atıyorsa, panelin varlık sebebi ortadan kalkmıştır. Bunun çoğu zaman WordPress'le değil, üstüne yığılan page builder katmanlarıyla ilgisi vardır. Bu konuya ayrı bir yazı ayırdım.

Özel CMS'in gerçek maliyeti

Şimdi madalyonun diğer yüzü. Özel CMS'e geçerken devraldığınız yükler:

  • Ekosistem yok. Hazır bir eklenti kurup 10 dakikada çözdüğünüz şey artık geliştirme işi.
  • Bakım sizin. Güvenlik yaması, kütüphane güncellemesi, PHP sürüm geçişi — hepsi sizin sorumluluğunuzda.
  • Tedarikçi bağımlılığı. Kodu yazan kişiyle yolunuz ayrılırsa devralacak birini bulmak, WordPress geliştiricisi bulmaktan zordur.
  • İlk sürüm hep eksik. WordPress'in 20 yılda biriktirdiği küçük konforlar (revizyon geçmişi, otomatik kaydetme, medya kütüphanesi) sıfırdan gelmez.

Bu yüzden özel CMS kararı bir "yükseltme" değil, takastır: esneklik ve kontrol alırsınız, ekosistem ve hazır çözüm kaybedersiniz.

Geçişi nasıl yaparım

Müşterilerime hiçbir zaman "her şeyi durdurup baştan yazalım" demiyorum. İşleyen yöntem kademeli:

  1. Sınırı çizin. En çok acıtan tek modülü seçin — genelde sipariş veya bayi yönetimidir.
  2. O modülü ayrı yazın. Mevcut site ayakta kalsın, yeni modül yanında çalışsın.
  3. Veriyi tek yönlü senkronlayın. İki sistem bir süre birlikte yaşayacak; hangisinin doğru kaynak olduğunu baştan belirleyin.
  4. URL'leri koruyun. Geçişte adres değişiyorsa 301 tablosu hazırlayın. Bu adımı atlayan projeler arama trafiğinin yarısını kaybediyor.
  5. Sonra genişletin. İlk modül altı ay sorunsuz çalıştıysa bir sonrakine geçin.

Kısa cevap

Özel CMS'e, WordPress'ten sıkıldığınız için değil, WordPress size para kaybettirmeye başladığı için geçilir. Bu ikisini ayırt edemiyorsanız henüz vakti gelmemiştir — ve bunu söylemek benim de işime gelmez ama doğrusu budur.

Diğer yazılar