Drupal is a popular CMS (Content Management Software) used by organizations - large and small to structure and organize their digital content. It is a free, open-source Content Management Software developed with PHP under the GNU General Public License.
Dries Buytaert founded Drupal in 2000 with his friend Hans Snijder. They were both students of the University of Antwerp when they created a nameless message board in 2000, which was later released as an open-source project about a year later.
It all started when Antwerp University students needed an internet connection and they designed a wireless bridge between their dorms. Now, Dries created a small news site with a web board where they could communicate with each other.
They had to give the web board a name because they wanted to put it online. Dries chose a name - dorp.org, which means “village” in Dutch. He then mistyped it as “drop.org,” which is now the “Drupal” we all know today. The term - “druppel” means “drop” in Dutch.
In this article, we’ll explore everything you should know about Drupal CMS and how Drupal websites work. Also, we’ll answer the question - what is Drupal and how it works?
A Free, Powerful and Highly Customizable Framework
The Drupal software is a free and powerful CMS tool built on a highly customizable framework. It is multilingual and accessible to anyone who wants to use it. The latest Drupal build allows users access to different modules in several languages. Additionally, the latest build of the Drupal platform is flexible and easy to navigate. Launching the Drupal software on different platforms has just got easier and better because you have several Drupal service hosting providers you can choose to suit your content needs.
The Main Features of Drupal
Editing and authoring
It has WYSIWYG (What you see is what you get) content authoring and editing tools. Users can use these tools to create, edit, search, preview, publish, and update content easily with the Drupal website.
Layout building
It allows users - site builders and content editors to create the layout of the content they want to display on their site. They can use this feature to customize the arrangement of the content on their pages.
Theming structure
It has a theme system that allows the user to control the overall appearance of the site. This includes everything you see in the front-end part of the website - both the mark-up language and CSS style.
Form building
It allows you to edit and configure several forms like contact forms and complex forms.
Media Library
It allows you to search for media that you need on your Drupal website and add new media items. Some media types you can import on the Drupal site include video files (which can be imported from YouTube); files (text, doc, docx, pdf, and zip); and images (jpeg, jpg, gif, and png).
What Technologies Stand Behind it
Drupal CMS runs on different technology stacks. They include the following:
Web server
The recommended web server for running Drupal CMS is Apache. A web server is a program that takes requests from clients and responds to them accordingly. Other popular web servers include Microsoft IIS, Nginx, and Hiawatha.
Operating system
Drupal is compatible with different operating systems, including Unix, Linux, Windows, and Mac OS.
Database
The recommended database server for Drupal is MySQL. Other database servers include PostgreSQL and SQLite.
PHP
PHP is the scripting language used by Drupal. It allows Web Developers to create different content that interacts with databases.
Characteristics that make Drupal Different from the Alternatives.
Drupal has several characteristics which make it preferred over other CMS. Some of them include:
Flexibility
Drupal was designed for technical and non-technical users who want to solve their content management problems easily. It provides a modular approach to building sites of different sizes. What you get when you use other CMSs is a one-way approach to solving your content management problems. This can be tiring and complex for some users who want to customize their sites. With Drupal, you get different tools to help you build your site from scratch.
Security
The good thing about using Drupal is that it has a team of developers that conducts routine checks on its site to ensure it is secure. Additionally, it has a team of security experts that checks for security issues and releases fixes to them. Drupal open source enjoys inputs from more than one million developers worldwide, making it one of the most secure sites.
Community Support
Drupal CMS enjoys the contribution of a large community of experts worldwide. They include web developers, coordinators, editors, designers, and sponsors.
What is Drupal Used for?
Users can use the Drupal application to build different websites - corporations, educational, entertainment, and e-commerce. You don’t necessarily need to be a developer or learn Drupal programming to build websites using Drupal.
The Kind of Websites You Can Build with Drupal
A Non-governmental Organization Website
Non-governmental Organizations use Drupal to build their websites because it is flexible and easy to navigate. Some Non-governmental websites built with Drupal include:
- Equal Opportunity Community Initiative
- Doctors Without Borders
- Habitat for Humanity International (HFHI)
- World Vision International
- Human Rights Watch
E-commerce Websites
E-commerce Websites want to deliver quality and seamless services to their customers and to do so, they need a website that is fast, safe and easy to navigate. Drupal offers E-commerce companies a fast and reliable platform where they can create quality content that targets their customers and drives traffic. Some E-commerce website that uses Drupal include Lush, Olsson & Gerthel, Pam Kerr Designs, Fooda, and Muzeo.
News and Magazines
There are different news publications and magazine companies that use Drupal to design their website. They include Entertainment Weekly, Economist.com, Forbes, BBC Magazines, and ABS-CBN News.
A Government Site
Local and state government-owned establishments have a functional website where they put out information to the members of the public. They use Drupal because it is fast and easy to scale. Some Government sites that use Drupal include:
- GovCMS, a content management system available to all levels of Australian Government
- Royal Borough of Kensington and Chelsea
- Dublin City Council
- Limerick City and County Council
- Cork County Council
- Dun Laoghaire-Rathdown County Council
Other websites you can use Drupal to build include Corporation Websites, University Websites, Company Websites, Travel Websites, and Cultural Institution Websites.
How Does it Work?
Before we answer the question - how does Drupal work? Let’s explore how information flows between its system layers.
The Drupal Flow
-
Date (Nodes)
This is the building block of the five layers in the Drupal flow. Data must go in before anything can be displayed on the site. Without the data layer, you can’t get to the next layer.
-
Modules
This is the second layer where data input in the first layer goes. Modules are functional plugins which are built on Drupal’s core functionality. They are used to perform several tasks - customizing data items, displaying content, and designing an e-commerce shop.
-
Blocks & Menus
The third layer in the Drupal flow is Blocks and Menus. Blocks provide the result that is inputted into the module. You can also place them in different spots in your template (theme) layout. Menus gives the link to all the pages created on Drupal.
-
User Permissions
Permissions handle what users can see or do at a particular time.
-
Theme
This is the highest level in the Drupal flow. It consists of what users will see on the front end of the website. For example, CSS (Cascading Style Sheet) elements and HTML5 (Hyper Text Markup Language) with some PHP variables. It controls how modules generate their markup per time.
Now that we understand Drupal information flow, let’s explain how Drupal works. To explain this, we’ll assume we’re sending a request from a local computer. So, we can make a request from a local computer by passing an address to the web browser - Mydrupalsite.com/hello-world. This request is made to a remote computer or a web server called Apache or Nginx. Then, based on the document root, the web server searches the project and the request is sent to index.php. The index.php will now construct this request object and pass the request object to the Drupal kernel. A Drupal kernel is also called the Drupal core. The responsibility of the Drupal core is to initialize Drupal, which is called Drupal bootstrapping. In case you don’t know, bootstrapping means a computer is made to self-startup.
Drupal has a bootstrapping process which starts the entire application and does the following:
- Take services from the symphony framework
- Initialize your core modules
- Initialize the contributed and customer modules
- Process the content for the page: Hello-world
So, if hello-world is an article, it will take services from the node module. The node module will now prepare the content and send it to the theme layer. Next, the theme layer constructs the response object and sends it back to your web server. The response object can have different types - JSON, plain text or XML. So, from the web server, the information is sent back to your web browser.
What are the Main Concepts of Drupal
Node (Content)
Node is a single piece of content on your website. For example, any webpage you see on a website is a node. Editors with privileges and permissions can create nodes. It can also be created by importing it from an external source. Here are some examples of different node types:
- Block
- Comment
- Taxonomy term
- User
- Article
- Basic page
Field
This is a data type that stores information. All nodes have several fields, which may include Tags, Title property or body. Here are some examples of different types of fields:
- Taxonomy
- Image
- Text
- Content
- File
- Boolean
- Date
- Comment
- Number
Drupal core
Drupal core is what you get when you first install Drupal. It contains important functionalities for website management, which include:
- Menu management
- User management
- Layout edition
- RSS channel
- Taxonomies
Content Types
It is the combination of related data types. It comprises different fields that define the attribute of a specific content type. For instance, a News content type might have the following fields:
- Headline (Plain text)
- Body (Rich text)
- Byline (Plain text)
- Published date (date)
- Image (Image field)
Taxonomy
It is used for grouping information on the Drupal site. Taxonomy consists of vocabularies, which consist of individual terms.
User
It is also called a user account. This is an individual presence on the Drupal platform. Expectedly, a user should have a username, role, e-mail address, and password.
Module
A Drupal module is a piece of software that is made available by the community to extend Drupal’s functionality. Modules can best be described as plugins in WordPress. Even though Drupal Core can boast of having all the necessary functionalities for content creation and management, some functionalities still need to be added to it. For example, if you want to integrate your website with an external website - you’ll need to add new functionalities that are not available in Drupal Core. Modules are divided into three categories - core, contributed, and custom modules.
Regions and Blocks
Regions are laid out pages where you can post your content on the Drupal site. They include the header, sidebar, footer, and main content region.
Blocks are chunks of content that are put in different areas of the site. They are displayed in different regions of the website pages.
Theme
The theme is the finished product of the website that is seen by the website visitors. It manages the website's appearance, overall appeal, colours, and layout. You can download the core or contributed themes from external sources.
Permissions
Permissions control users' access to content and functionalities on the Drupal site. You can assign permissions to users to perform certain functions. Registered and non-registered users get certain permissions on the Drupal site. For example, registered users can get permission to be site members, content editors, and administrators.
Fun Facts you Might not Know About Drupal
Here are some fun facts about Drupal:
- Dries Buytaert founded Drupal in 2000 with his friend Hans Snijder
- Dries chose a name - dorp.org, which means “village” in Dutch
- He then mistyped it as “drop.org,” which is now the “Drupal” we all know today
- He launched the first version of Drupal on January 15th, 2001
- Drupal has a 2.4% share of the CMS market
- There are more than 1 million Drupal sites
- More than 42,650 free Drupal modules are available for download
- The Drupal community has more than 1 million members
- Big companies like Tesla, Lush, and Pinterest use Drupal
- Drupal is available in different languages - English, Portuguese, Chinese, Greek, Filipino, Burmese, Spanish, Hebrew, German, and so forth.
Advantages of Drupal Over Proprietary Software
Here are some of the Advantages of Drupal:
- It is an open-source CMS
- It offers a wide range of modules
- It is flexible
- It has multilingual capabilities
- It is mobile and SEO-friendly
- It is built on a strong security architecture
- It has millions of community contributors that support it
- It is easily customizable
Need Help with your Drupal Website? Get in Touch and let us help you with your projects
Drupal is undoubtedly one of the biggest CMSs that offers robust functionalities to its users. Small and large companies use Drupal solutions to structure and organize their content. One of the reasons why they do is because it has a wide variation of modules that allow you to personalize your content.
Navigating Drupal can be daunting for non-technical users who have little or no experience in building and developing websites. Our team of experts can help you develop and design a clean, scalable, and easy-to-navigate website. At OSWorkshop.com we have several years of experience in designing, building, and implementing flexible and efficient mobile apps and web services. Have a look at our portfolio and feel free to get in touch for a consultation! We would be happy to know about your project and help you bring it to its maximum potential.