Drupal

Drupal adalah sebuah perangkat lunak sistem manajemen konten yang bebas dan terbuka yang di distribusikan di bawah lisensi GPL, pengembangan dan perawatannya dilakukan oleh ribuan komunitas pengguna dan pengembang di seluruh dunia. Dibuat dengan bahasa pemrograman PHP, Drupal dapat dipasang pada beberapa jenis database seperti MySQL, PostgreSQL, SQLite,MariaDB dan juga MsSQL. Web server yang mendukung diantaranya Apache, Nginx, IIS yang berjalan pada sistem operasi Cross-platform seperti Microsoft Windows, Mac OS X, Linux dan FreeBSD. Drupal dapat diunduh secara bebas dan dapat digunakan secara bebas, sehingga memungkinkan setiap orang baik secara individu maupun komunitas untuk mempublikasi, mengatur, mengelola dan mengorganisir berbagai jenis dari isi/konten pada website.
Kemampuannya tidak sekadar sebagai CMS, namun dengan modul API-nya Drupal juga dapat digunakan sebagai CMF dalam membangun aplikasi berbasis Web.
 
Drupal versi terbaru adalah versi 8 yang pertama kali diluncurkan pada tanggal 9 November 2015, 2 bulan setelah versi kandidat (RC1) diperkenalkan.
 
Drupal dapat digunakan untuk membangun:
 Portal Web Komunitas
 Forum Diskusi
 Website Perusahaan
 Aplikasi Internal
 Website Personal atau Blog
 Aplikasi Komersial E-commerce
 Kumpulan Sumber Informasi
 Situs Jaringan Sosial
 Jaringan intranet
 Surat Kabar (Newsletter)
 Galeri multimedia Multimedia

Core 
Di komunitas Drupal, 'core' mengacu pada basis kode bersama yang dapat diperluas dengan modul pembantu dan, untuk versi sebelum Drupal 8, disimpan di luar folder 'situs web' dari instalasi Drupal. (Sejak versi 8, core disimpan dalam subdirektori 'core' sendiri.) Core Drupal adalah elemen standar Drupal. Pustaka bersama khusus Drupal serta proses bootstrap didefinisikan sebagai core dari Drupal; semua fungsi lain didefinisikan sebagai modul Drupal, termasuk modul sistem itu sendiri.
Dalam konfigurasi default situs web Drupal, pembuat dapat menyumbangkan konten baik sebagai pengguna terdaftar maupun anonim (atas kebijakan administrator). Konten ini tersedia untuk pengunjung web berdasarkan berbagai kriteria yang dapat dipilih. Mulai dari Drupal 8, Drupal telah mengadopsi beberapa pustaka Symfony ke dalam core Drupal.
Modul utama juga menyertakan sistem taksonomi hierarkis yang memungkinkan developer untuk mengklasifikasikan konten atau menandainya dengan kata kunci untuk memudahkan akses.
Terdapat dua versi yang dianggap stabil terbaru, yaitu 7.84 dan 9.3.3. Drupal memiliki log perubahan terperinci dari fitur-fitur utama untuk versi masing-masing.

Fitur Unggulan 
 CMS (Content Management Systems) Sistem Manajemen Konten
 CMF (Content Management Framework) Sistem Platform
 Blog Pengguna tunggal dan pengguna jamak
 Built-in Forums engine
 Multi situs hanya dengan satu instalasi
 Multi bahasa, sudah mendukung Bahasa Indonesia dan Bahasa Jawa.
 Konten Multimedia
 Mendukung banyak jenis database seperti MySQL, PostgreSQL, SQLite, MsSQL dan MariaDB
 Bisa dipasang dengan webserver Apache, Nginx, IIS dan Lighttpd
 Pengaturan hak akses pengguna tak terbatas, bukan hanya pengaturan hak akses jenis konten bahkan bisa memberikan hak akses tiap field data
 Bisa membuat jenis konten baru yang tipe datanya sesuai keinginan pengguna

Paket Distribusi Drupal 
 Open Atrium, paket drupal ditujukan untuk pembuatan situs intranet
 Open Publish, paket drupal ditujukan untuk pembuatan situs berita
 Acquia Common, paket drupal ditujukan untuk pembuatan situs jaringan sosial
 UberDrupal, paket drupal ditujukan untuk pembuatan situs e-commerces
 Pressflow, paket drupal ditujukan untuk pembuatan situs yang mengutamakan kinerja yang lebih cepat
 dll

Perbandingan Fitur dengan CMS lain

Konsep 
 
 Node. Node adalah satuan konten yang terdapat dalam Drupal. Sebuah node dapat merupakan blog, topik forum, berita, halaman statis, gambar, video, audio, maupun Flash. Kumpulan node inilah yang membentuk keseluruhan konten dalam sebuah website berbasis Drupal.
 Taxonomy. Node yang begitu banyak perlu dikategorikan sesuai topik masing-masing. Dalam Drupal terdapat modul Taxonomy yang digunakan untuk mengkategorisasikan konten. Nama Taxonomy diambil dari ilmu klasifikasi. Dengan demikian setiap satuan konten bisa disebutkan apakah berkategori Politik, Ekonomi, Sains, atau Agama. Cara mengklasifikasikan konten sepenuhnya diserahkan kepada pengguna yang punya hak untuk mengatur Taksonomi. Modul-modul lain juga menggunakan modul Taxonomy untuk mengklasifikasikan konten tertentu, seperti misalnya Forum dan Image Gallery.
 Comment. Comment merupakan tanggapan terhadap sebuah node yang dituliskan oleh user (Komentar).
 Menu. Sistem menu dalam drupal adalah sistem penanganan request melalui URL. Jika Clean URL tidak diaktifkan, maka setiap query string yang berbentuk ?q= akan ditangani oleh sistem menu.
 Module. Website Drupal dapat ditambah dengan modul-modul tertentu sesuai keperluan. Modul adalah satuan program yang ditulis dalam PHP yang jika diaktifkan akan menambah fungsi tertentu. Misalnya modul Organic Groups untuk memberi fungsi group/mailing list seperti layaknya Google Groups ataupun Yahoo Groups. Modul Images untuk mengizinkan user mengupload gambar sebagai node.
 Theme. Theme adalah penampakan luar dari sebuah website Drupal. Sistem theme akan mengatur bagaimana website ditampilkan, layout halaman, penempatan block, style, dan sebagainya. Theme dapat diubah-ubah dengan memilih theme yang tersedia dalam direktori /themes maupun /sites/all/themes.
 Hook. User tidak pernah menyadari keberadaan konsep ini dalam Drupal, kecuali mereka adalah developer. Hook adalah metode yang digunakan Drupal agar setiap modul dapat menambahkan fungsi tertentu, dengan cara mengaitkan fungsi tertentu tersebut pada hook yang dimiliki sistem Drupal. Sebagai contoh, setiap modul dapat menambah menu baru dengan cara mendefinisikan fungsi modul_menu, yang akan menjamin Drupal tidak lupa memperhitungkan keberadaan menu tersebut ketika diperlukan.
 Entity. Pengguna tidak menyadari keberadaan konsep ini dalam Drupal, kecuali mereka adalah developer. konsep ini mulai muncul di Drupal 7. Entitas digunakan untuk menyimpan dan menampilkan data, yang dapat menjadi node, user, istilah, taksonomi atau pengembangan secara kustom. Entitas memiliki daftar fungsi pembantu yang dapat memudahkan pengembangan dan adalah mungkin untuk menambahkan field ke entitas melalui antar muka, seperti yang digunakan untuk membuat suatu node.

Modul inti

Tema Standar Drupal 6 
 Bluemarine
 Chamelon
 Garland
 Marvin
 Minelli
 Pushbutton

Tema Standar Drupal 7 
 Bartik
 Garland
 Seven
 Stark

Lihat pula 
 Joomla
 Wordpress
 Plone
 VBulletin
 Moodle
 Vieris

Referensi

Pranala luar 
 Situs web resmi internasional
 Situs Drupal Indonesia
 Dokumentasi resmi untuk pengembang
 Buku Panduan untuk pengguna baru
 Asosiasi Drupal
 Tutorial Video
 Blog gratis berbasis Drupal

Perangkat lunak blog
Sistem manajemen konten sumber terbuka