Drupal is a free, open-source content management system (CMS) with a large, supportive community. This guide is for people who are just sorting out what Drupal is and what you can do with it. It focuses on resources that provide an informative overview instead of hands-on tutorials. It is designed to give some context and history of the Drupal project, along with the major concepts involved in building a site with it. If you want to begin learning Drupal hands-on, the best start is the Build Drupal Sites guide, which walks you through the foundations of working with Drupal.
Want to jump ahead? Here are the main sections of this page:
What is a content management system (CMS)?
A CMS is software that helps you manage digital content. More specifically, a CMS like Drupal is a web application that allows one or more users to create, edit, publish, and control access to a website using a graphical user interface (GUI). Many modern CMSes use a database to store the content and a scripting language (in Drupal's case, PHP) to dynamically build the HTML needed to present the content to a web browser.
You can read more about CMS in relation to Drupal in the Drupal 8 User Guide introduction, Drupal as a Content Management System.
What is open source?
Open-source software (OSS) is software that has made the source code available with a license that allows anyone to inspect, modify, and distribute the software freely. Drupal is released under the GNU General Public License, version 2 or later. (You can read more about the Drupal license on Drupal.org's Licensing page). One of the side effects of this license for Drupal is that the software itself is free to download. There are no license fees, as are often found with proprietary software, e.g. Sitecore or SharePoint. Due to the large community of contributors who can easily extend the functionality of Drupal, there is also a huge free community library of extentions, called modules, and themes that can change how the website looks.
What is Drupal?
The Drupal slogan is "Come for the code, stay for the community." You can download the software for free and do what you like with it. There are also tens of thousands of people around the world who come together to improve the code, write documentation, run events, and support each other. To gain the full benefits of using Drupal, you should be sure to also understand what the community offers.
Drupal is software that you can download from Drupal.org and use to build a website. As a modern CMS, it has many features for managing a site through a GUI, including:
- creating and editing content with editor tools
- controlling publication status and workflows
- creating and managing custom URLs and menu items
- managing users and the access they have to content and features of the site
- organizing content with categories and listing pages
- moving blocks of content to different areas of the page
Underneath the powerful UI, there is a very flexible object-oriented framework, which has been built from the start to be modified and extended. This allows developers to finely tune a Drupal site to have the features and functionality you need. There is also a robust template layer using the Twig templating language, which lets you precisely customize the look of the site.
These two videos give a good overview of the main features that Drupal provides and the basic terminology you will need to know as you wade into Drupal.
Once you're ready to dig in to learning how to use Drupal, you should start with site building, which is the foundation level for almost all tasks in Drupal.
Drupal has an amazing community of people who create the software and help each other make the best use of it. It is the best resource to understand, and become a part of, in order to help you on your Drupal journey. Many people new to Drupal overlook this critical resource, but looking into what the community offers will shorten your learning curve considerably.