From Wikipedia, the free encyclopedia - View original article

Drupal logo
Original author(s)Dries Buytaert
Initial releaseJanuary 2001 (2001-01)
Stable release7.29[1][2] / 20 July 2014 (2014-07-20)
Development statusActive
Written inPHP
Operating systemCross-platform
Size11.4 MB (uncompressed core)[3]
Available inMultilingual
TypeContent management framework, Content management system, Community and Blog software
LicenseGPLv2 or later[4]
Jump to: navigation, search
Drupal logo
Original author(s)Dries Buytaert
Initial releaseJanuary 2001 (2001-01)
Stable release7.29[1][2] / 20 July 2014 (2014-07-20)
Development statusActive
Written inPHP
Operating systemCross-platform
Size11.4 MB (uncompressed core)[3]
Available inMultilingual
TypeContent management framework, Content management system, Community and Blog software
LicenseGPLv2 or later[4]

Drupal /ˈdrpəl/[5] is a free and open-source content management framework written in PHP and distributed under the GNU General Public License.[4][6][7] It is used as a back-end framework for at least 2.1% of all websites worldwide[8][9] ranging from personal blogs to corporate, political, and government sites including whitehouse.gov and data.gov.uk.[10] It is also used for knowledge management and business collaboration.[11]

The standard release of Drupal, known as Drupal core, contains basic features common to content management systems. These include user account registration and maintenance, menu management, RSS feeds, taxonomy, page layout customization, and system administration. The Drupal core installation can be used as a simple website, a single- or multi-user blog, an Internet forum, or a community website providing for user-generated content.

As of February 2014, there are more than 30,000[12] free community-contributed addons, known as contributed modules, available to alter and extend Drupal's core capabilities and add new features or customize Drupal's behavior and appearance. Also the Drupal community has more than 1 million members [13] (As of October 2013) and 31,000 Developers[14] (As of February 2014). Because of this plug-in extensibility and modular design, "The Drupal Overview" on Drupal's website describes it as a content management framework.[6] Drupal is also described as a web application framework, as it meets the generally accepted feature requirements for such frameworks.[citation needed]

Although Drupal offers a sophisticated programming interface for developers, no programming skills are required for basic website installation and administration.[15]

Drupal runs on any computing platform that supports both a web server capable of running PHP (including Apache, IIS, Lighttpd, Hiawatha, Cherokee or Nginx) and a database (such as MySQL, MongoDB, MariaDB, PostgreSQL, SQLite, or Microsoft SQL Server) to store content and settings.


Originally written by Dries Buytaert as a message board, Drupal became an open-source project in 2001.[16] The name Drupal represents an English rendering of the Dutch word "druppel", which means "drop" (as in "a water droplet").[17] The name came from the now-defunct Drop.org website, whose code slowly evolved into Drupal. Buytaert wanted to call the site "dorp" (Dutch for "village") for its community aspects, but mistyped it when checking the domain name and thought the error sounded better.[16]

Interest in Drupal got a significant boost in 2003 when it helped build "DeanSpace" for Howard Dean, one of the candidates in the U.S. Democratic Party's primary campaign for the 2004 U.S. presidential election. DeanSpace used open-source sharing of Drupal to support a decentralized network of approximately 50 disparate, unofficial pro-Dean websites that allowed users to communicate directly with one another as well as with the campaign.[18] After Dean ended his campaign, members of his web team continued to pursue their interest in developing a web platform that could aid political activism by launching CivicSpace Labs in July 2004, "the first company with full-time employees that was developing and distributing Drupal technology".[19] Other companies began to also specialize in Drupal development.[20][21] By 2013 the Drupal website listed hundreds of vendors that offered Drupal-related services.[22]

As of 2014 Drupal is developed by a community,[23] and its popularity is growing rapidly.[citation needed] From July 2007 to June 2008 the Drupal.org website provided more than 1.4 million downloads of drupal software, an increase of approximately 125% from the previous year.[24][25]

As of February 2014 more than 1,015,000 sites used Drupal.[26] These include hundreds of well-known organizations,[27] including corporations, media and publishing companies, governments, non-profits,[28] schools, and individuals. Drupal has won several Packt Open Source CMS Awards[29] and won the Webware 100 three times in a row.[30][31]

On March 5, 2009 Buytaert announced a code freeze for Drupal 7 for September 1, 2009.[32] Drupal 7 was released on January 5, 2011, with release parties in several countries.[33] After that, maintenance on Drupal 5 stopped, with only Drupal 7 and Drupal 6 maintained.[34] Drupal 7 series maintenance updates are released regularly.[35]

Drupal 8 is in development, with no set release date yet.[36] The work on Drupal 8 is divided into categories, called Core initiatives: Mobile, Layouts, Web Services, Configuration Management, and HTML5. Google Summer of Code is sponsoring 20 Drupal projects.[37]

Major versions[edit]

Release date
1.015 Jan 2001[38]
2.015 Mar 2001[38]
3.015 Sep 2001[38]
4.016 Jun 2002[38]
4.516 Oct 2004[38]
4.616 Apr 2005[38]
4.716 May 2006[38]
5.015 Jan 2007 [39]
6.013 Feb 2008[40]
7.05 Jan 2011[41]
7.288 May 2014[42]
Drupal versions 1-6 release history timeline


In the Drupal community, the term "core" means anything outside of the "sites" folder of a Drupal installation.[43] Drupal core is the stock element of Drupal. In a Drupal website's default configuration, content can be contributed by either registered or anonymous users (at the discretion of the administrator) and is made accessible to web visitors by a variety of selectable criteria. Drupal core also includes a hierarchical taxonomy system, which allows content to be categorized or tagged with key words for easier access.[15]

Drupal maintains a detailed changelog of core feature updates by version.[1]

Core modules[edit]

Drupal core includes optional modules that can be enabled by the administrator to extend the functionality of the core website.[44]

The core Drupal distribution provides a number of features, including:[44]

  • Access statistics and logging
  • Advanced search
  • Blogs, books, comments, forums, and polls
  • Caching and feature throttling for improved performance
  • Descriptive URLs
  • Multi-level menu system
  • Multi-site support[45]
  • Multi-user content creation and editing
  • OpenID support
  • RSS feed and feed aggregator
  • Security and new release update notification
  • User profiles
  • Various access control restrictions (user roles, IP addresses, email)
  • Workflow tools (triggers and actions)

Core themes[edit]

The color editor being used to adjust the "Garland" core theme

Drupal includes core themes, which customize the "look and feel" of Drupal sites,[46] for example, Garland and Bartik.

The Color Module, introduced in Drupal core 5.0, allows administrators to change the color scheme of certain themes via a browser interface.[47]


As of August 2013, Drupal had been made available in 110 languages and English (the default).[48] Support is included for right-to-left languages such as Arabic, Persian, and Hebrew.[49]

Drupal localization is built on top of gettext, the GNU internationalization and localization (i18n) library.

Auto-update notification[edit]

Drupal can automatically notify the administrator about new versions of modules, themes, or the Drupal core.[49] Such a feature can be useful for security fixes.

Database abstraction[edit]

Prior to version 7, Drupal had functions that performed tasks related to databases, such as SQL query cleansing, multi-site table name prefixing, and generating proper SQL queries. In particular, Drupal 6 introduced an abstraction layer that allowed programmers to create SQL queries without writing SQL.

Drupal 7 extends the data abstraction layer so that a programmer no longer needs to write SQL queries as text strings. It uses PHP Data Objects to abstract the physical database. Microsoft has written a database driver for their SQL Server.[50] Drupal 7 supports the file-based SQLite database engine, which is part of the standard PHP distribution.

Embracing Windows developers[edit]

With Drupal 7's new database abstraction layer and ability to run on the Windows web server IIS, it is now easier for Windows developers to participate in the Drupal community. A group on Drupal.org is dedicated to Windows issues.[51]


With the release of Drupal 7, web accessibility has been greatly improved by the Drupal community.[52] Drupal is a good framework for building websites accessible to people with disabilities because many of the best practices have been incorporated into the program code Core. The accessibility team is carrying on the work of identifying and resolving accessibility barriers and raising awareness within the community. Drupal 7 started the adoption of WAI-ARIA support for Rich Internet Applications and this has been carried further in Drupal 8. There have been many improvements to both the visitor and administrator sides of Drupal, especially:

The community also added an accessibility gate for Core issues in Drupal 8.[53]

Extending the core[edit]

Drupal core is modular, defining a system of hooks and callbacks, which are accessed internally via an API.[54] This design allows third-party contributed modules and themes to extend or override Drupal's default behaviors without changing Drupal core's code.

Drupal isolates core files from contributed modules and themes. This increases flexibility and security and allows administrators to cleanly upgrade to new releases without overwriting their site's customizations.[55] The Drupal community has the saying "Never hack core", a strong recommendation that site developers do not change core files.[43]


Contributed modules offer such additional or alternate features as image galleries, custom content types and content listings, WYSIWYG editors, private messaging, third-party integration tools,[56] and more. As of February 2014 the Drupal website lists more than 25,500 free modules.[12]

Some of the most commonly used contributed modules include:[57]


Contributed themes adapt or replace a Drupal site's default look and feel.

Drupal themes use standardized formats that may be generated by common third-party theme design engines. Many are written in the PHPTemplate engine[59] or, to a lesser extent, the XTemplate engine.[60] Some templates use hard-coded PHP. Drupal 8 will integrate the Twig templating engine.

The inclusion of the PHPTemplate and XTemplate engines in Drupal addressed user concerns about flexibility and complexity.[61] The Drupal theming system utilizes a template engine to further separate HTML/CSS from PHP. A popular Drupal contributed module called 'Devel' provides GUI information to developers and themers about the page build.

Community-contributed themes[62] at the Drupal website are released under a free GPL license,[63] and most of them are demonstrated at the Drupal Theme Garden.[64]


In the past, those wanting a fully customized installation of Drupal had to download a pre-tailored version separately from the official Drupal core. Today, however, a distribution defines a packaged version of Drupal that upon installation, provides a website or application built for a specific purpose.

The distributions offer the benefit of a new Drupal site without having to manually seek out and install third-party contributed modules or adjust configuration settings.[65] They are collections of modules, themes, and associated configuration settings that prepare Drupal for custom operation. For example, a distribution could configure Drupal as a "brochureware" site rather than a "news" site or an "online store".


Drupal is based on less publicized but still widely used architecture Presentation Abstraction Control, or PAC. The menu system acts as the Controller. It accepts input via a single source (HTTP GET and POST), routes requests to the appropriate helper functions, pulls data out of the Abstraction (nodes and, from Drupal 5 onwards, forms), and then pushes it through a filter to get a Presentation of it (the theme system). It even has multiple, parallel PAC agents in the form of blocks that push data out to a common canvas (page.tpl.php).[66]


Drupal.org has a large community of users and developers, with over 1,015,000 user accounts and over 31,000 developer accounts[67] (As of February 2014).[12] The semiannual Drupal conference alternates between North America and Europe.[68] Attendance at DrupalCon grew from 500 at Szeged in August 2008 to over 3,700 people at Austin, Texas in June 2014.

Smaller events, known as "Drupal Camps" or DrupalCamp,[69] occur throughout the year all over the world. The annual Florida DrupalCamp brings users together Coding for a Cause for the benefit of nonprofit organizations.

There are a number of active Drupal forums,[70] mailing lists[71] and discussion groups.[72] Drupal also maintains several IRC channels[73] on the Freenode network.

There are over 30 national communities[74] around drupal.org offering language-specific support.


Drupal's policy is to announce the nature of each security vulnerability once the fix is released.[75][76]

Administrators of Drupal sites are automatically notified of these new releases via the Update Status module (Drupal 6) or via the Update Manager (Drupal 7).[77] Drupal maintains a security announcement mailing list, a history of all security advisories,[78] a security team home page,[79] and an RSS feed[80] with the most recent security advisories. In 2008, eleven security vulnerabilities were reported and fixed in the Drupal core.[78] Security holes were also found and fixed in 64 of the 2243 user-contributed modules.[78][81]


In a controversial[82] article about the adoption of Drupal by the Whitehouse.gov site, Slate associate editor Chris Wilson[83] lists some common criticisms of Drupal. Other criticisms have included:

See also[edit]


  1. ^ a b "Download page". drupal.org. Retrieved 2014-07-20. 
  2. ^ "drupal 7.28". drupal.org. Retrieved 2014-07-20. 
  3. ^ "drupal 7.22". drupal.org. Retrieved 2013-04-04. 
  4. ^ a b "Licensing FAQ". drupal.org. Retrieved 2009-04-08. 
  5. ^ A query on Drupal's official website on March 2009: How does one pronounce "Drupal"? (accessed 19 June 2013)
  6. ^ a b "The Drupal Overview". drupal.org. Retrieved 2009-04-08. 
  7. ^ "System Requirements". drupal.org. Retrieved 2009-04-08. 
  8. ^ W3Techs (2011-07-15). "Usage of content management systems for websites". Retrieved 2011-07-15. 
  9. ^ BuiltWith (2011-03-28). "Drupal Usage Statistics". Retrieved 2011-03-28. 
  10. ^ "The State of Drupal 2010 speech". Archive.org. 2001-03-10. Retrieved 2011-08-31. 
  11. ^ "Knowledge management with Drupal". 
  12. ^ a b c "Drupal Homepage". Drupal.org. Retrieved 2014-02-18. 
  13. ^ https://www.drupal.org/node/2110205
  14. ^ https://drupal.org/node/2133153
  15. ^ a b "Features". drupal.org. Retrieved 2009-04-08. 
  16. ^ a b "History". drupal.org. Retrieved 2009-04-08. 
  17. ^ "Druppel: Dutch to English Translation". Babylon Translation. Retrieved 2009-04-08. 
  18. ^ Benjamin Melançon et al. (2011). The Definitive Guide to Drupal 7 (2nd ed.). Apress. p. 823. ISBN 9781430231356. Retrieved 2012-05-27. 
  19. ^ Critchley, Spencer (2006-05-03). "Digital Politics: An Interview With CivicSpace Founder Zack Rosen". O'Reilly Media. Retrieved 2012-05-27. 
  20. ^ Kreiss, Daniel (2012-03-05). "Dean, Romney, and Drupal: Values and Technological Adoption". Culture Digitally. Retrieved 2012-05-27. 
  21. ^ Samantha M. Shapiro, "The Dean Connection", The New York Times December 7, 2003, accessed May 27, 2012.
  22. ^ "Marketplace". drupal.org. Retrieved 2013-04-18. 
  23. ^ Koenig, Josh. "Growth Graphs". Groups.Drupal. Retrieved 2009-04-08. 
  24. ^ Buytaert, Dries (2008). "Drupal Download Statistics". Retrieved 2009-04-08. 
  25. ^ Buytaert, Dries (2007). "Drupal Download Statistics". Retrieved 2009-04-08. 
  26. ^ "Drupal project usage". 
  27. ^ "Drupal Sites". Dries Buytaert. Retrieved 2010-07-20. 
  28. ^ "List of Nonprofit, NPO, NGO Websites Using Drupal". ENGINE Industries. Retrieved 2010-07-20. 
  29. ^ "OSS CMS Award Previous Winners". Packt Publishing. Retrieved 2009-04-08. 
  30. ^ "Drupal is a Webware 100 winner for the third year in a row". Drupal.org. Retrieved 2011-08-31. 
  31. ^ "Cnet.com". News.cnet.com. 2009-05-19. Retrieved 2011-08-31. 
  32. ^ "Buytaert.net". Buytaert.net. Retrieved 2011-08-31. 
  33. ^ "Drupal 7 to be released on January 5 (with one ginormous party)". Buytaert.net. Retrieved 2011-08-31. 
  34. ^ "Xplain Hosting Drupal 7 Quickstart training seminar". Scoop. 2010-12-16. 
  35. ^ "drupal 7.24". drupal.org. Retrieved 2013-11-20. 
  36. ^ http://buytaert.net/drupal-8-feature-freeze-extended
  37. ^ "Drupal Summer of Code projects". appspot.com. Retrieved 2011-04-29. 
  38. ^ a b c d e f g "Drupal 7 CHANGELOG.txt" at drupal.org
  39. ^ "[1]" at Drupal.org
  40. ^ "drupal 6.0" at Drupal.org, released 3 Nov 2011
  41. ^ "drupal 7.0" at Drupal.org, released 3 Nov 2011
  42. ^ "drupal 7.28" at Drupal.org, released 08 May 2014
  43. ^ a b "Never hack core". drupal.org. 
  44. ^ a b "Handbook: Core Modules". drupal.org. Archived from the original on 2008-07-28. Retrieved 2009-04-08. 
  45. ^ "Drupal Multi-site installation recipes". 
  46. ^ Buytaert, Dries. "Garland, the new default core theme". drupal.org. Retrieved 2009-04-08. 
  47. ^ "Color: Allows the user to change the color scheme of certain themes". drupal.org. Retrieved 2009-04-08. 
  48. ^ "Drupal core translation downloads". drupal.org. Retrieved 2012-11-10. 
  49. ^ a b "Drupal 6.0 released". drupal.org. Retrieved 2009-04-08. 
  50. ^ "Install Drupal for Windows". microsoft.com. Retrieved 2011-02-14. 
  51. ^ "Drupal on Windows Group". drupal.org. Retrieved 2011-02-14. 
  52. ^ Killesreiter, Gerhard (2013-02-25). "Accessibility statement". drupal.org. Retrieved 2013-04-16. 
  53. ^ Scholten, Roy (2012-12-10). "Drupal core gates". drupal.org. Retrieved 2013-04-16. 
  54. ^ "API Reference". drupal.org. Retrieved 2009-04-08. 
  55. ^ "File and directory management". drupal.org. 
  56. ^ 14 hours 40 min ago. (2009-05-20). "Integrating Drupal with External Systems". Appnovation.com. Retrieved 2011-08-31. 
  57. ^ "Project usage overview". Drupal.org. Retrieved 2011-08-18. 
  58. ^ "Field API". 2009. Retrieved 2009-05-08. 
  59. ^ "PHPTemplate theme engine". drupal.org. Retrieved 2009-04-08. 
  60. ^ "XTemplate theme engine". drupal.org. Retrieved 2009-04-08. 
  61. ^ "How does Drupal compare to Mambo? discussion thread". drupal.org. 2005-01-17. Retrieved 2009-04-08. 
  62. ^ "Drupal themes". Drupal.org. Retrieved 2011-08-31. 
  63. ^ "Adding your theme to Drupal.org". Drupal.org. 
  64. ^ "Drupal Theme Garden". Themegarden.org. Retrieved 2011-08-31. 
  65. ^ "Top Drupal Distributions". AGLOBALWAY Consulting Services Inc. 
  66. ^ "MVC vs. PAC". 
  67. ^ [2]
  68. ^ "drupal.org discussion on Drupalcon event management". Groups.drupal.org. Retrieved 2011-08-31. 
  69. ^ "Drupal Camps and Cons". Retrieved 25 January 2013. 
  70. ^ "forums". Drupal.org. Retrieved 2011-08-31. 
  71. ^ "mailing lists". Drupal.org. Retrieved 2011-08-31. 
  72. ^ "Drupal Groups". Groups.drupal.org. Retrieved 2011-08-31. 
  73. ^ "Drupal IRC channels on FreeNode". Drupal.org. Retrieved 2011-08-31. 
  74. ^ "Language specific communities". Drupal.org. 2011-08-26. Retrieved 2011-08-31. 
  75. ^ Drupal. "Security announcement and release process". 
  76. ^ Drupal. "How to report a security issue". 
  77. ^ "Update manager (and Update status)". drupal.org. Retrieved 2011-07-01. 
  78. ^ a b c "Security advisories". drupal.org. Retrieved 2009-04-28. 
  79. ^ "Drupal security team". Drupal.org. Retrieved 2011-08-31. 
  80. ^ "Drupal Security RSS feed". Drupal.org. Retrieved 2011-08-31. 
  81. ^ "Contributed modules". drupal.org. Retrieved 2009-04-28. 
  82. ^ Messenger's Error(s): Chris Wilson's flawed rant about Drupal and whitehouse.gov Conor McNamara. DPCI October 27, 2009
  83. ^ Message Error, Why running the White House Web site on Drupal is a political disaster waiting to happen Chris Wilson. Slate (magazine) October 27, 2009
  84. ^ Scollan, Becca; Abby Byrnes; Malia Nagle; Paul Coyle; Cynthia York; Maleka Ingram (2008-05-01). "Drupal Usability Research Report" (PDF). Retrieved 2009-04-08. 
  85. ^ Lal, Kieran (2008-06-26). "Drupal usability tests from the University of Baltimore with community solutions". drupal.org. Retrieved 2009-04-08. 
  86. ^ Buytaert, Dries (2008-07-03). "Usability, usability, and usability". Retrieved 2009-04-08. 
  87. ^ Buytaert, Dries (2008-03-10). "First results from usability testing". Retrieved 2009-04-08. 
  88. ^ "Report from Formal Drupal" (PDF). 2008-03-03. Retrieved 2009-04-08. 
  89. ^ Buytaert, Dries (2009-02-04). "Mark Boulton to help with Drupal 7". 
  90. ^ University of Minnesota Office of Information Technology (2011-05-23). "Usability test at University of Minnesota, may 2011". drupal.org. 
  91. ^ University of Minnesota Office of Information Technology (2011-06-01). "Report from the University of Minnesota Drupal Usability Testing". drupal.org. 
  92. ^ "Drupal Gardens". 
  93. ^ "Open Enterprise". 
  94. ^ "Mitkom". 
  95. ^ Howard, Brian C. (2007-01-25). "Harnessing Drupal for Citizen Journalism". NewAssignment.Net. Retrieved 2009-04-08. 
  96. ^ "Drupal Review". 
  97. ^ James, Heather (2010-11-09). "203 people tell What I wish I knew when I started Drupal". Acquia.com. Retrieved 2010-11-11. 
  98. ^ Buytaert, Dries (2006-05-26). "Backward Compatibility". Retrieved 2009-04-08. 
  99. ^ Buytaert, Dries (2006-07-27). "The pain before the pay-off". Retrieved 2009-04-08. 
  100. ^ "Drupal's Upgrade Instructions (end-user)". Drupal.org. Retrieved 2011-08-31. 
  101. ^ "Joomla 1.5 & Drupal 6.1 Performance Comparison". 
  102. ^ "Is Drupal Slow & Bloated?". 
  103. ^ "Is Drupal the right tool for the job?". 
  104. ^ "Drupal vs Joomla: performance | Dries Buytaert". Buytaert.net. Retrieved 2012-05-05. 
  105. ^ "Authenticated User Page Caching (Authcache)". drupal.org. Retrieved 2009-09-23. 
  106. ^ Buytaert, Dries (2006-08-11). "Drupal vs Joomla! performance". Retrieved 2009-05-20. 
  107. ^ "Speed up a Drupal web site by enabling MySQL query caching". nadeausoftware.com. 2007-03-07. Retrieved 2009-06-21. 
  108. ^ "Book on Drupal Performance & Scalability". Books.tag1consulting.com. 2008-07-16. Retrieved 2011-08-31. 
  109. ^ "Caching in Drupal 6". drupal.org. 2008-07-28. Retrieved 2009-06-21. 
  110. ^ "Drupal 6 vs Drupal 7 performance and comments vs nodes". CivicActions.com. 2009-05-19. Retrieved 2009-06-21. 
  111. ^ "Boost". drupal.org. 2006-10-15. Retrieved 2012-05-05. 
  112. ^ "Memcache API and Integration". drupal.org. Retrieved 2012-05-05. 

Further reading[edit]

External links[edit]