Konu Başlıkları
Yükleniyor...

Drupal Nedir, Hangi Projede İşe Yarar?

Drupal'ın Güçlü ve Zayıf Yanları: Ne Zaman Tercih Edilmeli

Drupal, büyük ve birbirine bağlı içerik yığınlarını yönetmek için tasarlanmış açık kaynaklı bir içerik yönetim sistemi. Üniversite, belediye ve kurumsal yayın sitelerinde sık görülmesinin sebebi de bu: rakiplerinin eklentiyle çözdüğü veri modeli ve yetkilendirme işini çekirdekte çözüyor. Karşılığında kurulum ve bakım maliyeti yüksek, bu maliyeti her proje kaldırmaz.

Temeli anlamadan geri kalanı anlaşılmıyor: varlık, alan, referans

Drupal'da her şey bir varlıktır (entity): içerik, kullanıcı, taksonomi terimi, yorum, hepsi aynı iskeleti paylaşır. Bu varlıklara istediğiniz alanı eklersiniz ve alanlar birbirine referansla bağlanır. Bir "Etkinlik" içerik tipi kurup ona konuşmacı referansı, mekan referansı ve tarih alanı tanımladığınızda arka planda kendi tablolarına yazan, revizyonu ve çevirisi tutulan bir yapı oluşur. Views modülü de bu yapının üstünde, kod yazmadan sorgu kurmanıza yarar.

Yani Drupal'ın asıl karşılaştırıldığı şey bir eklenti değil, aksi halde kendinizin yazacağı bir veri katmanı. Bunu kavradığınız anda hem avantajların hem dezavantajların nereden geldiği anlaşılıyor.

Güçlü olduğu yerler

  • Veri modeli: Karmaşık içerik ilişkileri, çok dillilik ve revizyon takibi ek modül yığmadan kurulabiliyor. Otuz binin üzerinde katkı modülü var ama iyi kurulmuş bir Drupal sitesinde bunların çok azına ihtiyaç duyulur.
  • Rol ve izin sistemi: İzinler içerik tipi ve işlem düzeyinde ayrı ayrı tanımlanıyor. Editörün yalnızca kendi bölümündeki yazıyı yayınlayabildiği, üçüncü bir rolün sadece çeviri girebildiği bir kurgu, arayüzden çıkıyor.
  • Güvenlik süreci: Drupal'ın ayrı bir güvenlik ekibi var, açıklar SA-CORE numaralarıyla duyuruluyor ve yamalar takvime bağlı çıkıyor. Kurumsal tarafta tercih edilmesinin görünmeyen sebebi, kodun kendisinden çok bu süreç.
  • Ölçek: Yüz binlerce düğümün olduğu sitelerde önbellek katmanı (Redis, Varnish, BigPipe) çekirdeğe uygun kurgulanmış durumda. Sorun genelde Drupal'da değil, kötü yazılmış özel modülde çıkar.

Bedeli

Öğrenme eğrisi gerçek. Yalnızca PHP değil, Symfony'nin servis konteyneri, olay dinleyicileri ve Twig şablon mantığı da işin içinde. Arayüzden tıklayarak site kuran biri ilk özel modülünü yazarken bambaşka bir dünyaya giriyor.

Maliyet buradan türüyor: Drupal ücretsiz, Drupal geliştiricisi değil. Aynı işin WordPress karşılığına göre daha yüksek adam-saat ödersiniz ve bu fark küçük projelerde kapanmaz.

Sürüm geçişlerinde ise bir yanlış anlama var. Asıl kırılma 7'den 8'e geçişteydi, mimari baştan yazıldığı için o geçiş taşıma değil yeniden kurma anlamına geliyordu. 8'den sonrası, kullanımdan kaldırılan API'leri temizlediğiniz sürece görece rutin ilerliyor. Bir kurum sitesini Drupal 7'den taşırken zamanın çoğu kod yazmakla değil, kullandığımız modüllerin yeni sürümde dengini aramakla geçmişti. Drupal 7'nin resmi desteği 5 Ocak 2025'te bittiğine göre bu iş artık ertelenebilir bir kalem de değil.

Tema tarafı ise bence dezavantaj olarak yanlış anlatılıyor. Sorun tema sayısının azlığı değil, Drupal'ın hazır tema satın alıp üstünde oynama alışkanlığına göre kurgulanmamış olması. Twig ile kendi temanızı yazacağınızı varsayar, o yüzden hazır temalar da genelde iskelet düzeyinde kalır.

SEO tarafında durum

Drupal'da tek bir "SEO modülü" yok. URL yapısı Pathauto ile desenlere bağlanır, meta etiketler Metatag ile yönetilir, site haritası ayrı bir modülden çıkar. WordPress'ten Yoast alışkanlığıyla gelenler bunu geç fark edip kurulumu eksik bırakıyor. Altyapı yeterli, hazır paket yok.

Hangi projede Drupal, hangisinde değil

Kabaca bir eşik önerebilirim: içerik tipi sayınız beşi geçmiyorsa, tek dilde yayın yapıyorsanız ve içerikler arasında ciddi bir referans ilişkisi yoksa Drupal'ın çözdüğü sorun sizde yok demektir. O durumda daha basit bir sistem hem daha ucuz hem daha hızlı çıkar.

Buna karşılık farklı rollerin farklı bölümleri yönettiği, içeriğin çevrildiği, onay akışının bulunduğu ve verinin sitede olduğu kadar API üstünden de tüketildiği projelerde Drupal hâlâ yerinde bir tercih. Kurumsal yayın, eğitim ve kamu tarafında bunca yıldır ayakta kalmasının sebebi popülerlik değil, bu ihtiyaç kümesinin başka bir yerde bu kadar hazır karşılanmaması.

Kaynaklar