Drupal

Drupal; ücretsiz, açık kaynaklı bir içerik yönetim sistemi ya da içerik yönetim'e odaklı bir altyapı yazılımıdır. Modüler yapısı sayesinde, web uygulama çatısı, topluluk portalı, forum ya da blog motoru olarak da kullanılabilmektedir. 2000'li yılların ortalarında Drupal esneklik, genişleyebilirlik, yönetim kolaylığı ve etkin bir topluluğun desteği ile popülerlik kazanmıştır.

An itibarı ile (Mart 2014) W3Tech[16]'e göre evrensel web sitelerinin %1,9'u drupal ile işletilmektedir. Kullanılan içerik yönetim sistemlerindeki piyasa payı ise %5,3 dür.

Drupal PHP programlama dili ile yazılmıştır. Bununla birlikte Drupal tabanlı bir web sitesinin kurulumu, geliştirilmesi ve bakım genellikle PHP programlama becerisi gerektirmemektedir.

Drupal içerik yönetim sistemi Unix, GNU/Linux, BSD türevleri, Solaris, Windows ve Mac OS X gibi işletim sistemleri başta olmak üzere, üzerinde PHP yorumlayıcı bulunan herhangi bir işletim sisteminde çalışabilmektedir. Apache, lighttpd ya da IIS gibi herhangi bir biçimde PHP ile eklemlenebilen bir Web sunucu yazılımı ve MySQL, PostgreSQL gibi bir veritabanı sunucuya gereksinim duyar.

 Drupal tabanlı büyük siteler 
Drupal The Onion, Ain't It Cool News, Spread Firefox, Ourmedia, KernelTrap, NewsBusters ve Defective by Design gibi birçok yüksek trafiğe sahip web sitesi tarafından kullanılmaktadır.

Drupal'in çekirdek dağıtımı binlerce yazılım geliştiricisi tarafından yapılmıştır ve katılımcı olarak Sony gibi tüzel kişiler de Drupal'in geliştirilmesine katkıda bulunmaktadır.

 Tarihçe 
İlk olarak Dries Buytaert tarafından bulletin board system olarak geliştirilmiş ve Drupal 2001 yılında açık kaynak projesi olmuştur. İsmi daha sonra zamanla Drupal'e dönüşen Drop.org sitesinden gelir. Dries siteyi önce “dorp” (Hollandacada “köy”, topluluk yönüne vurgu için) olarak adlandırmak istedi ama alan adını alırken bir yazım hatası yaptı ve sonra da bu ismin kulağa daha hoş geldiğini düşündü.

 İçerik Yönetim Sistemi 
Drupal'in basit bir katmanı veya "çekirdeği" (core) vardır. Bu katman Drupal'in temel özelliklerini oluşturmakla beraber ayrıca eklenebilir modül programlama olanağını da sağlar.(Drupal'in çekirdek özellikleri online "Drupal Handbook" başlığında http://drupal.org/handbook/modules  adresinde açıklanmaktadır.

Drupal'in çekirdeğine dâhil edilmiş olan modüller kullanıcıların içerik ekleme, gözden geçirme ve içeriği sınıflandırma, arama yönetimi, yorum ekleme, forumlara katılma, anketlerde oy verme ve HTML bilgisine gerek duymadan ortak proje yazılımlarında çalışmaya olanak sağlar. Ayrıca çekirdek modüller kullanıcıların kişisel bilgilerini girebilecekleri, görüntülüyebileceği ve birbirleri ile ya da sitenin yöneticileriyle iletişim kurabilmelerine de olanak sağlar.

Drupal'in sürüm yönetim sistemi ki bu da Drupal'in çekirdek bir özelliğidir, güncellenmiş içeriği, kimin güncellediğini, neyin güncellendiğini, hangi tarih ve saatte güncellemenin yapıldığını izler ve kayıt altına alır. Sistem kullanıcıların yaptıklarını güncellemeli daha önceki bir sürüme geri alabilecekleri loglama yapısı sunar.

Drupal'in içine gömülmüş olan çekirdek modüller ile site yöneticileri sitenin görünüşünü özel yapılmış temalar ile değiştirebilir, menü yapılarını değiştirebilir ve kullanıcıların kendi dillerinde siteyi sunabilirler. Drupal'in çekirdeği yöneticilere ayrıca başka sitelere RSS yayını yapmayı ve başka sitelerden RSS yayını almasını sağlar.

Diğer çekirdek modüller kullanıcı kaydını ve yöneticilerin kullanıcılara kullanıcı rollerini tanımlamalarını, kullanıcılara sitedeki bazı özellikleri kullanabilmeleri için hak tanımlamayı sağlar. Yöneticiler ayrıca ulaşım kurallarını tanımlar ve belirli kullanıcı isim, e-posta adresi ve IP adreslerine göre siteye erişimlerini engelleyebilirler.

Drupal'in çekirdeği ayrıca "Temiz URL" (URL alias) özelliğiyle Drupal'in kullanıcı dostu, kolay hatırlanan URL'lerinin otomatik ya da site yöneticisinin denetiminde oluşturulmasını sağlar. Örneğin "www.benimsitem.com/?q=node/432" yerine "www.benimsitem.com/urunler" şeklinde bir URL oluşturulabilir.

Çekirdek modüller ayrıca istatistik ve site yöneticilerinin siteyi yoğun trafikte performansını iyileştirmek için önbellekleme (caching) ve (throttling) raporlarını almalarını sağlar.

Yöneticiler birçok filtre ve içerik tipi oluşturabilir ve uygulayabilirler. Kullanıcılar ve yöneticiler sözü geçen çekirdek özellikleri PHP ya da HTML bilgisine gerek duymadan kullanabilirler.

 Modüller 
Drupal'in modüler tasarımı, PHP bilgisine iye insanların modüller yazarak ek özellikler üretmelerine olanak sağlar. Resmi Drupal websitesi, Drupal kullanıcıları tarafından yazılmış binlerce bedava modül sunmaktadır.

e-ticaret sistemleri, iş akış yönetimi sistemleri, fotoğraf galerileri, organik gruplar, Google Maps, Amazon Items, e-posta listesi yönetimi ve CVS ile entegrasyon gibi alanlarda güçlü modüller bulunmaktadır.

Modüllerin işlevlerinin Drupal'e eklenebilmesi için Drupal, çekirdek ve modülleri "kanca (hook)" veya callbacks denen bir sistem ile entegre eder. Drupal çekirdeği SQL injection gibi genel güvenlik sorunlarına karşı da güvenlik sağlar.

Drupal sitesinde 23 Eylül 2011 tarihi itibarıyla 8.860 tane ücretsiz eklenti bulunmaktadır. Bunlardan bazıları:

 CCK - the Content Construction Kit
 CCK - associated modules
 Views
 Organic GroupsOrganic Groups http://drupal.org/project/og 
 PanelsPanels http://drupal.org/project/panels 
 e-commerce systems
 e-commerce systems
 Amazon Associate ToolsAmazon Associate Tools http://drupal.org/node/18842 

 Temalar 
Drupal için yazılan temalar genelde PHPTemplate motoru"PHPTemplate theme engine ", Drupal.org. ya da XTemplate motoru"XTemplate theme engine ", Drupal.org. ile yazılır. Daha önceki şablonlar PHP'nin içine doğrudan kodlanmakta idi.

Drupal'in daha önceki sürümlerinin tema sistemi Mambo, Joomla! ve Plone ürünlerine göre çok daha karmaşık olduğu ve tasarım tabanlı olmadığı için çok eleştirildi."How does Drupal compare to Mambo? " discussion thread, Drupal.org. Sonuç olarak PHPTemplate ve XTemplate motorları bu sorunu çözmek için kullanıldı.

 Ayrıca bakınız 
 İçerik Yönetim Sistemleri
 Joomla!
 WordPress
 TYPO3

 Kaynakça 

 Dış bağlantılar 
 Drupal Resmi Sitesi
 Drupal Türkiye Topluluğu Resmi Sitesi  
 Geliştiriciler için Belgeler
 Drupal 
 Drupal Türkiye Adlı Web Sitesi 

Kategori:İçerik yönetim sistemi
Kategori:Özgür yazılım
Kategori:İnternet yazılımları
Kategori:Blog yazılımları
Kategori:2000 yazılımları
Kategori:Çapraz platform yazılımları
Kategori:Web uygulama iskeletleri
Kategori:Web geliştirme
Kategori:PHP