Bilmeyenler var ise Drupal bir İYS(İçerik Yönetim Sistemi)dir. Bir içerik yönetim sistemi size forumlar, bloglar, galeriler, portallar oluşturmanızı sağlar. İYS’lerin en çok bilinenleri arasında Joomla, phpBB, WordPress gibi örnekler verilebilir. Ancak Drupal’ın algılanışının diğer iyslerden ayrılması gerektiğini düşünüyorum.

drupal
drupal

Drupal’ın diğer İYSlerden farklılıklarını şu şekilde sıralayabiliriz:* Drupal durağan bir yapıya sahip değildir. Size kendi isteğinize göre geliştirme imkanı sunuyor.* Modullerinin zengin olması değil, modullerinin kendi kabuğundan dışarı çıkarak tüm sistemle entegre halinde çalışması. (birazdan açıklayacağım)* En önemlisi de CCK ve Views modulleri. Bu iki modul neredeyse tüm istediklerinizi yapmanıza olanak tanır.Kısaca Drupal’ın farklı yönlerini sıraladıktan sonra bunları biraz açıklayayım. Öncelikle drupalın durağan olmamasından kastım nedir? Bunu şöyle açıklayayım. Her platformun bazı sınırları vardır ve sizin yaptığınız uygulamalar bu sınırlar içerisinde kalırlar. Drupalın temelleri bu sınırları çok esnekleştiriyor. Yani sizi sıkıp daraltmıyor. Örneğin içerik olarak ekleyeceğiniz verilerin biçimini ne tür veriler saklayacağını ve buna benzer birçok şeyi php veya mysql bilmeden halletmenize olanak sağlıyor.Modül Zenginliği Mi Yoksa Modüllerin İlişkilenmesi Mi?
Daha önce örnek olarak verdiğim İYSlerin tonlarca modülü vardır. Bu modül sayısı drupal’ınkilerden daha da fazladır hatta. Ancak diğer İYSlerde karşılaştığım bir şey var; genellikle modüller sadece kendi işiyle ilgileniyor ve diğer modülleri geliştirmiyor. Yani kısaca etliye sütlüye karışmıyor.Drupal’da ise modüller’i ek olarak kurduğunuzu bile unutuyorsunuz. Çünkü modüller sanki çekirdek sistemin bir parçasıymış gibi davranıyorlar. Bununla birlikte kurduğunuz modüller diğer modülleri de zenginleştiriyor. Örnek vermek gerekirse; ImageCache adındaki modül resimleri upload ederken resimlerde ön değişiklikler(resim boyutunu küçültmek, croplamak v.b) yapmaya yarıyor. Bu modülü kurduğunuzda u modülün nimetlerini Views adı verilen veritabanından istenilen verileri çekmeye yarayan(sql bilmeden) modülü daha da zenginleştiriyor. Veritabanından resim çekerken daha önceden hazırladığınız bir imagecache’i seçip ona göre göstermek gibi.CCK ve Views ile Sınırları Aşabilirsiniz
Bu iki modül drupal’ın en çok kullanılan hatta olmazsa olmaz modülleridir.Not: CCK drupal 7 ile birlikte çekirdeğe dahil edilmeye başlanmış.
CCK modülü sizin uygulamanızda yöneteceğiniz içerik türlerini zenginleştirmenizi sağlar. Örneğin sitenizde “gazete” adında bir içerik saklayacaksınız. Bu içerikte gazetenin yılı, ayı, pdf dosyası ve belki de önemli 5 başlığını tutacaksınız. Bunun için “gazete” adında yeni bir içerik türü yaratıp, cck ile bu içerik türünün alanlarını belirleyebilirsiniz (yıl, ay, dosya, haber başlıkları).

ckk alanları
ckk alanları

Drupal bu içerik türünü temel içerik türlerinden ayrı algılamaz. Bu da az önce bahsettiğim modüllerin çekirdeğin bir parçasıymış gibi davranmasına iyi bir örnek olarak verilebilir.Views modülü ise temel olarak; sistemde kayıtlı olan verilerin(içeriklerin) istenilen biçimde gösterilmesi veya listelenmesi için kullanılır.
Örneğin, az önce CCK örneğinde yarattığınız gazete içeriğinin son eklenen 5 girdisini anasayfanızda listelemek için views kullanılır. Views ile CCK bütünleşik olarak çalışmaktadır. Gazeteleri listelerken yan tarafında küçükce ön sayfa resmini de koymak sizin elinizdedir. Views ile içeriğinizdeki tüm elemanları veya sadece bir elemanı(örneğin başlık gibi) görünüme koyabilirsiniz.

örnek views şeması
örnek views şeması

Son Olarak
Umarım bunlar size drupal’ın neden farklı olduğu konusunda bir fikir vermiştir. Unutmadan şunu da ekleme gereği duyuorum; farklı amaçlar için farklı platformlar kullanmak gerekir herşey için drupal’ı önermek gibi bir amacım yok.