Drupal is a free modular content management framework, content management system and blogging engine which was originally written by Dries Buytaert as a bulletin board system. Today, it is used by many high-traffic websites, including The Onion, Spread Firefox (Glaxstar, see below), Ourmedia, KernelTrap, and the Defective by Design campaign. It is particularly popular for building online communities, and has the tag line “Community plumbing”. Drupal is written in PHP. As of January 29, 2007, the current version was 5.1.
Content Management System
Drupal has a basic layer, or core, which supports pluggable modules which enable additional behaviors. The modules available for Drupal provide a wide assortment of features, including e-commerce systems such as the Amazon Items module, work-flow, photo galleries, mailing list management, and CVS integration.
Drupal‘s modular design and well-documented, clean codebase make it easier for individuals with knowledge of PHP to write code for additional features. Drupal is often used to build sites that focus on user communities.
Drupal‘s taxonomy (or categorization system) enables the site administrator to determine how content is classified. Once set up, the taxonomy module can “automatically classify new content”. This flexibility without the need for coding differentiates Drupal from similar systems; however it also renders the configuration more demanding and in some cases more time consuming.
The Actions and Workflow modules provide an example of the high degree of automation possible with Drupal. This requires the two modules to be set up using features from both. Extensive support documentation and videos are available to help configure the Workflow and Actions modules to achieve tasks such as sending out notices of new content.
Drupal achieves clean integration between the core and the modules via a system of hooks, or callbacks, to allow modules to insert functions into Drupal‘s path of execution. Drupal core provides protection against many of the usual security problems, like SQL injection.
Most themes for Drupal are written in the PHPTemplate engine or the XTemplate engine. Earlier templates used hard-coded PHP.
Earlier versions of Drupal‘s theming system were criticized  as being less design-oriented and more complicated than the systems for Mambo and Plone. The inclusion of the PHPTemplate and XTemplate engines in Drupal has addressed some of these criticisms.
About The Author
Gaurav Panchal is a writer and has written many short stories, play scripts, articles and press releases.