Drupal
Drupal is a free and open-source web content management system written in PHP and distributed under the GNU General Public License. Drupal provides an open-source back-end framework for at least 14% of the top 10,000 websites worldwide and 1.2% of the top 10 million websites—ranging from personal blogs to corporate, political, and government sites. Drupal can also be used for knowledge management and for business collaboration.
, the Drupal community had more than 1.39 million members, including 124,000 users actively contributing, resulting in more than 50,000 free modules that extend and customize Drupal functionality, over 3,000 free themes that change the look and feel of Drupal, and at least 1,400 free distributions that allow users to quickly and easily set up a complex, use-specific Drupal in fewer steps.
The base of Drupal is 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 serve as a simple website, a single- or multi-user blog, an Internet forum, or a community website providing for user-generated content.
Drupal also describes itself as a web application framework. When compared with notable frameworks, Drupal meets most of the generally accepted feature requirements for such web frameworks.
Although Drupal offers a sophisticated API for developers, basic Web-site installation and administration of the framework require no programming skills.
Drupal runs on any computing platform that supports both a web server capable of running PHP and a database to store content and configuration.
In 2023/2024, Drupal received over 250,000 Euros from Germany's Sovereign Tech Fund.
Drupal is officially recognized as a Digital Public Good.
History
Drupal was originally written by Dries Buytaert as a message board for his friends to communicate in their dorms while working on his Master's degree at the University of Antwerp. After graduation, Buytaert moved the site to the public internet and named it Drop.org. Between 2003 and 2008 Dries Buytaert worked towards a PhD degree at Ghent University.The name Drupal represents an English rendering of the Dutch word druppel, which means "drop". The name came from the now-defunct Drop.org, whose code slowly evolved into Drupal. Buytaert wanted to call the site "dorp" for its community aspects, but mistyped it when checking the domain name and thought the error sounded better.
Drupal became an open source project in 2001. 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. 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." Other companies also began to specialize in Drupal development.
By 2013, the Drupal website listed hundreds of vendors that offered Drupal-related services.
, Drupal is developed by a community. From July 2007 to June 2008, the Drupal.org site provided more than 1.4 million downloads of Drupal software, an increase of approximately 125% from the previous year.
more than 1,180,000 sites use Drupal. These include hundreds of well-known organizations, including corporations, media and publishing companies, governments, non-profits, schools, and individuals. Drupal has won several Packt Open Source CMS Awards and won the Webware 100 three times in a row.
Drupal 6 was released on 13 February 2008, on 5 March 2009, Buytaert announced a code freeze for Drupal 7 for 1 September 2009. Drupal 7 was released on 5 January 2011, with release parties in several countries. After that, maintenance on Drupal 5 stopped, with only Drupal 7 and Drupal 6 maintained. Drupal 7's end-of-life was scheduled for November 2021, but given the impact of COVID-19, and the continuing wide usage, the end of life was pushed back until 1 November 2023. This was extended once more as of June 2023 and was finally set for 5 January 2025.
Drupal 8 was first released on 19 November 2015. This was the first to use Symfony for components and Twig as a template engine and it also used the Composer for managing dependencies. The last Drupal 8 was version 8.9.20 which was released on 17 December 2021.
Drupal 9 was released in 2020 and was created with easier upgrades and management in mind. The first version was released on 3 June 2020 along with Drupal 8.9.0 with fewer major changes in project structure than in version 8.0, but with some of the old, deprecated code removed.
In October 2022, Drupal released an open source headless CMS accelerator, allowing the front end to be managed outside of the core system.
In April 2023, Drupal was recognized by the United Nations Digital Public Good Alliance as a digital public good.
Drupal Core
In the Drupal community, "core" refers to the collaboratively built codebase that can be extended through contributory modules and—for versions prior to Drupal 8—is kept outside of the "sites" folder of a Drupal installation. Drupal core is the stock element of Drupal. Common Drupal-specific libraries, as well as the bootstrap process, are defined as Drupal core; all other functionality is defined as Drupal modules including the system module itself.In a Drupal website's default configuration, authors can contribute content as either registered or anonymous users. This content is accessible to web visitors through a variety of selectable criteria. As of Drupal 8, Drupal has adopted some Symfony libraries into Drupal core.
Core modules also include a hierarchical taxonomy system, which lets developers categorize content or tag with keywords for easier access.
Core modules
Drupal core includes modules that can be enabled by the administrator to extend the functionality of the core website.The core Drupal distribution provides a number of features, including:
Core themes
Drupal includes core themes, which customize the "look and feel" of Drupal sites, 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.
Drupal CMS
At DrupalCon Portland in 2024, Dries Buytaert called for the Drupal Community to create a new, modernized Drupal experience. The project was initially called Starshot and it was an effort to reframe how people think of Drupal. The project aims to deliver a more user-friendly and out-of-the-box version of Drupal, with a focus on ease of use, faster onboarding, and a polished default experience. In 2025, this project was launched as Drupal CMS. This represents a shift toward making Drupal more accessible to non-developers while retaining its powerful, flexible core architecture.also includes many new features. Drupal is now more easily able to create an open source, no code/low code alternative.
Localization
As of September 2022, Drupal is available in 100 languages including English. Support is included for right-to-left languages such as Arabic, Persian, and Hebrew.Drupal localization is built on top of gettext, the GNU internationalization and localization library.
Auto-update notification
Drupal can automatically notify the administrator about new versions of modules, themes, or the Drupal core. It's important to update quickly after security updates are released.Before updating it is highly recommended to take backup of core, modules, theme, files and database. If there is any error shown after update or if the new update is not compatible with a module, then it can be quickly replaced by a backup. There are several backup modules available in Drupal.
On 15 October 2014, an SQL injection vulnerability was announced and update was released. Two weeks later the Drupal security team released an advisory explaining that everyone should act under the assumption that any site not updated within 7 hours of the announcement was compromised by automated attacks. Thus, it can be extremely important to apply these updates quickly and usage of a tool like drush to make this process easier is highly recommended.
Database abstraction
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 9 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 database. Microsoft has written a database driver for their SQL Server. Drupal 7 supports the file-based SQLite database engine, which is part of the standard PHP distribution.
Windows development
With Drupal 9'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.
Accessibility
Since the release of Drupal 7, Web accessibility has been constantly improving in the Drupal community. Drupal is a good framework for building sites accessible to people with disabilities because many of the best practices have been incorporated into Drupal Core.Drupal 8 saw many improvements from the Authoring Tool Accessibility Guidelines 2.0 guidelines which support both an accessible authoring environment as well as support for authors to produce more accessible content.
The accessibility team is carrying on the work of identifying and resolving accessibility barriers and raising awareness within the community.
Drupal 8 has good semantic support for rich web applications through WAI-ARIA. There have been many improvements to both the visitor and administrator sides of Drupal, especially:
- Drag-and-drop functionality
- Improved color contrast and intensity
- Adding skip navigation to core themes
- Adding labels by default for input forms
- Fixing CSS display:none with consistent methods for hiding and exposing text on focus
- Adding support for ARIA Live Regions with Drupal.announce
- Adding a TabbingManager to improve keyboard navigation