What is Drupal?
Drupal is an open-source content management platform that can be downloaded and used free of charge. It consists of a core group of files that are standard on all installations, plus plugins and themes that are added to customize it.
Benefits of Drupal Aside Similar CMS Software
Since WordPress and Joomla are the other two most popular CMSs available, I've compared them with Drupal to give you a better idea of Drupal's specialties.
But before we get into their comparisons, here's a list of everything they have in common:
- Free and Open-Source: All the aforementioned CMS applications are open-source, more importantly free. With solid communities behind them, these systems are backed by high-level expertise and support.
- Programming Language: Drupal, WordPress, and Joomla are all written in the programming language of PHP. All 3, in fact, are equipped with a user-friendly interface, requiring little actual programming knowledge for use.
- Community Driven Projects: Due to their open-source nature, all three projects are driven by their strong community of developers. These developers maintain and update their platform for mutual interest.
- MySQL Support: All these popular CMSs support MySQL, the most popular relational database management system of all. MySQL is essentially a programming language created for querying data.
- Plugins and Extensions: While their naming conventions are different, all three CMSs use plugins or extensions. These act as supplementary add-ons to complete the software with extra features.
- One-Click Installs: A popular term amongst e-marketeers (because it's awesome). One-click installs are what they are called, users can install complicated add-ons or software with one click. They are used to save both time and energy.
- Multiple Support Sources: Support is well catered for all Drupal, WordPress, and Joomla. There are multiple sources of expert advice, including forums, live chats, and official threads.
Drupal, WordPress, and Joomla - Side-by-Side Comparison
Now we know some of the similarities between the three, let's take a look at how they compare side-by-side. Since this page is dedicated to Drupal, we will cover it more in-depth as opposed to its rivals.
Drupal's user interface is a tad complicated which makes it less ideal for complete beginners. Adding content to your site is easy, but changing your site's appearance is not as intuitive.
On the other hand, the easiest of the three to use, especially for beginners, is WordPress. The WordPress dashboard is intuitive and simple to navigate.
Joomla is a bit more intimidating for beginners with their busy dashboard full of powerful features.
Both Drupal and WordPress have tens of thousands of extensions. In Drupal, they are called modules and in WordPress they are called plugins. In Drupal, these need to be manually installed on your website as it doesn't provide the one-click installations that WordPress does.
Joomla also has extensions but not as many as WordPress or Drupal. It is more complicated for users to add these to their website since they'll have to install them manually.
What Can They Handle?
Drupal is the most powerful CMS out of the three. But, this power comes at a cost. Users need an understanding of CSS, HTMP, and PHP to take advantage of the software's features.
Drupal requires a decent level of technical understanding, and developers will have full customizing control with root access.
On the other hand, WordPress works great for blogs, small to medium-sized websites, and small e-commerce stores.
Joomla can handle larger websites, including more complicated e-commerce stores or social networking websites.
What Can Drupal Do?
Now that you have a better idea of Drupal compares to it's fellow CMS software, let's learn more about what it actually does.
There are dozens of things to learn about Drupal since it's a complex, multi-purpose software designed for professional creation.
As we said, Drupal is often mentioned in the same breath as WordPress and Joomla. All of them are content management systems (CMS) - they let you organize text, images, and videos for the web.
Using Drupal for Growing Websites
However, Drupal's strength is in its complexity and robust architecture. There are several reasons why Drupal is considered a better alternative for larger projects.
Drupal is best for sites that are expected to grow or experience high volumes of traffic. It has a strong following amongst media clients, large e-commerce stores, top universities, and household brands. Drupal also provides the framework for many US and UK government websites.
Flexibility for Multiple Scripts
It's also known for being highly flexible, so companies can easily run a diverse range of scripts from one Drupal install. Unlike Joomla!, Drupal is not designed to support web applications, although some users do set it up for this purpose.
And while WordPress is more logical as a blogging platform, it's not designed to scale up and out like Drupal.
What Are Drupal Modules?
If you know anything about WordPress, you'll know that one thing people love about the CMS is their huge quantity and variety of plugins. Drupal has its own version of plugins, called modules. These will help you create the specific features that you want on your website.
Downloading and Installing Drupal Modules
Drupal, like WordPress, is built using PHP. A Drupal module is pretty much a PHP file that will drive its own functionalities on the website. Installing Drupal modules isn't as easy as installing a WordPress plugin. Here is a quick overview:
- Find a Drupal module of your choice.
- Ensure you select the '.gz' file.
- Download the module to your local computer.
- Navigate to your Drupal dashboard.
- Install the module directly from your computer.
You can also use Drupal's administrative console, drush, to download and install all in one interface.
Not Exactly a One-Click Install
Sure, sounds easy enough. You don't have to be a computer wiz to do this. It's just a few more steps than the one-click installs that we enjoy with WordPress's plugins. Anyhow, if you want a detailed breakdown of module installation, here you are!
How To Install Drupal in 5 Simple Steps
If your hosting provider doesn't provide a one-click installation of Drupal, then you'll have to install it yourself. To do so, you just have to follow a few steps:
- Download the installation file from Drupal.
- Create the settings.php and files directory for the install.
- Create a database for the Drupal installation.
- Set up the web server, ready for installation.
- Run the Drupal installation script.
Download and Extract
First, you must download the installation file from Drupal directly. Once you've done so, extract the file to get its contents. There are multiple ways you can download Drupal.
For Drupal to work, you need to provide the information of where your database is going to be. For this, you need to create your settings.php file to store this vital bit of information.
Looking for the right Drupal host?
SiteGround provides free Drupal migration. Drush is pre-installed on their plans. And they're rated #1 by our readers. Right now you can save up to 67% on SiteGround plans. Use this special discount link to get the deal.
Following your settings.php file, you need to create your empty database. Your database can be created using MySQL, phpMyAdmin or even using the command line. It's best to ask your host about this, depending on your options.
In order to successfully launch your installation and be prepared, you must set up a web server. Once this is done, you are ready to run the installation script.
Great, you got this far. Running the installation script is the simplest part. Looking like a conventional installer, it's fairly straightforward with a handful of options to choose from while setting up.
Support For Installation
To find more detailed instructions on how to install Drupal manually, read through their installation guide. Since it's open-source, there exists a large Drupal community available to help with the software. This community is where people get together and collaborate on new projects.
Here Drupal users can find help, chat with others and participate in forums. Finding professional support from companies available to assist with services like hosting and training is also an option.
Growth and History of Drupal
The Drupal source code was originally written as an internet forum application. Its founder, Dries Buytaert, is a PhD graduate in computer science.
Buytaert now runs a company called Acquia that specializes in Drupal support and employs 300 people. It was Acquia that assisted with the transition of the whitehouse.gov website to the Drupal platform.
Drupal is Achieving Global Popularity
From humble beginnings, Drupal Core now (as of December 2019) has 1.4 million users (official Drupal statistics). It is owned by the Drupal Association, which is a non-profit organization dedicated to promoting Drupal.
On the modern web, Drupal is built to support content. It lets companies index and display custom content types in a limitless number of ways, so you're not limited to normal blog or e-commerce formats. This is why many businesses adopt Drupal over the alternatives.
Drupal Web Hosting Requirements
Drupal is designed to be installed on the LAMP stack - Linux, Apache, MySQL, and PHP.
The latest version is Drupal 8, which was released in 2019. Most web hosting companies offer LAMP stack hosting. It can also be installed on Nginx or Microsoft IIS (Windows).
Core Installation Requirements
The core installation takes up 15 MB of space. Remember: you'll need more disk space for themes, modules, and content. Drupal recommends 60 MB of space for more complex websites.
You'll need to check that your database is on the same machine as your website files. This isn't a requirement as such, but it makes a big difference to resource usage. If your database is located elsewhere, you might find that your host objects to Drupal without sophisticated caching in place.
Drupal 8 System Requirements
Here are some more in-depth system requirements for Drupal 8, although before making a decision on a Drupal hosting plan, we advise you to check Drupal's official website first.
- Supported Browsers: Chrome, Safari, Firefox, Microsoft Edge, Opera
- Mobile: Safari iOS, Firefox ESR, Explorer, Chrome (Android and iOS), UC Browser, Opera Mini, Samsung Internet
- Recommended Database Servers: MySQL, MariaDB, Percona, PostgreSQL, SQLite
- Recommended Web Servers: Apache, Nginx, Microsoft IIS
- PHP Requirements: Version 7.2 upwards.
What to Look for in Drupal Hosting
If you're going to be using Drupal to create a website, you'll need hosting for it. Most popular web hosting companies will support the platform.
In fact, they'll probably give you simple, one-click installations of it from your hosting control panel.
Starting with Cheap Web Hosting
If you're just finding your way around Drupal and learning the CMS then you might be hesitant about paying for hosting. Though you can find free hosting out there, companies that offer these free services aren't usually the most reliable.
We recommend picking a really cheap web hosting plan instead while you learn your way around Drupal. Drupal can be used with multiple different kinds of databases. Including MySQL and MariaDB. If you need support for MS SQL then you will need to install additional modules.
Hosting on Shared, Cloud or Dedicated Servers
You can host Drupal on shared servers, cloud servers, and even dedicated servers. As long as your server has PHP support, you'll be good to go. Just make sure that the hosting plan you choose gives you at least 10 MB of disk space. This may restrict you from some of the cheapest shared hosting plans at a few web hosting companies.
If you choose to go the cloud hosting route, you'll enjoy blazing-fast hosting speeds.
Cloud hosting solutions are faster than shared hosting because it allows you to use the resources of multiple servers. This is compared to being stuck with the resources of a single server that you share with other hosting customers.
Recommendation for Larger Sites
Most web hosts make it easy to migrate your website to a more powerful plan when it outgrows this shared infrastructure.
Drupal Risks to Watch Out For
All software with a large installed base is occasionally hacked. Most notably, in October 2014, a large-scale SQL injection hack rendered tens of thousands of Drupal websites insecure.
The hack took advantage of a vulnerability in Drupal 7's code, and it meant hackers could create a backdoor that could not be detected or patched.
There have been other hacks since. So you need to protect yourself. If you've been a victim of a Drupal hack, you need to follow these steps to get clean and start fresh:
- Backup your website, including all your files and databases (ideally download it locally)
- Identify the hack (you may need specialist help for this, or simply use Google to find out how)
- Get rid of the malicious infiltrator (again, get technical help or do your research)
- Secure your user permissions
- Change all administrative usernames and passwords, including the e-mail accounts they're linked to
- Set up a firewall, as well as any additional protection you may find useful
Drupal Pros and Cons - What's to love or hate?
With Drupal being one of the more popular choices as an open-source CMS, there are still some positives and negatives to highlight. Here is a summary of the key points.
- Most web hosts provide it as a free one-click installer.
- Developers have tried to make it more usable, and are actively investing in getting feedback.
- It's very flexible, particularly if you can code.
- It's designed to be shaped to fit your own purposes.
- It scales up well, even with very large amounts of content; Drupal 7 was re-coded with speed in mind.
- It has been used to develop some very high profile sites (Sony Music, eBay, Harvard, and Al Jazeera).
- User roles and permissions are sophisticated.
- Plugins, known as modules, extend core functionality and make Drupal more versatile.
- It's less popular than its competitors, so you'll find it a bit more difficult get help online.
- The learning curve is pretty steep if you want to go beyond the basics.
- You will need PHP skills (or hired helpers) for anything complex.
- The add-on modules can be complicated and difficult to implement.
- Big upgrades can render all of your modules totally unusable.
- One major hack has made some concerned.
Top 3 Drupal Hosts - Our Winners
There are plenty of decent Drupal hosts out there, but this time, the following three came out on top.
Here's a quick comparison of their most affordable Drupal plans on offer:
|Host||Sites||Bandwidth||SSD Storage||Starting Price|
SiteGround is our top choice for affordable Drupal hosting. They include a one-click installer and integrated Git for developer collaboration.
You'll also enjoy their Drupal SuperCacher. It's designed to optimize Drupal caching in order to increase website speeds and load time. It also comes with free Let's Encrypt SSL certificate and free Cloudflare CDN
SiteGround promises an uptime of at least 99.9% but stayed above 99.99% uptime over the last 12 months.
Bluehost's cheapest shared hosting plan provides fivefold the storage space to accommodate Drupal than SiteGround's cheapest plan at 50 GB.
The company doesn't issue an uptime guarantee, but we've experienced pretty consistent reliability with their hosting and haven't run into any serious downtime. Over the past 12 months, they also held their ground above 99.97%.
A2 Hosting matches our other two Drupal hosting winners when it comes to price. The difference is that their shared hosting plans will give you unlimited SSD storage space.
You'll also have the option to have your website hosted on Turbo servers which are faster because they house fewer A2 customer accounts on them.
Like SiteGround, A2 reassures you with a 99.9% uptime guarantee with a 12-month average of 99.99%. The company has more powerful VPS and dedicated hosting options for when you want to expand your site.
Useful Drupal Guides
If you are already a Drupal user or are seriously considering purchasing Drupal hosting from one of the above hosts, here are a few useful guides.
- Drupal CDN Integration: this module allows you to set up an easy integration of content delivery networks. It was recently upgraded in 2020 and is fully functional.
- How to Enable HTTPS: if you are wondering how you can enable your SSL certificates with Drupal, look no further.
- Drupal cPanel Integration: this module allows you to create FTP and e-mail accounts without having to separately use your cPanel dashboard. It includes automatic e-mail accounts, FTP accounts, and permission syncs for new users, as well as a bulk update functionality.
Looking for a great deal on Drupal hosting?
A2 Hosting normally scores at or near the top in our recent speed tests. Drupal comes pre-installed on their plans. Right now our readers can save up to 50% on their plans, which are recommended by Drupal. Use this special discount link to get the deal.
Other features in CMS
Drupal Frequently Asked Questions
- What is Drupal?
Drupal is an open-source content management framework. It is built in PHP and is used to build customized content management systems (CMS). Many people confuse Drupal with being a CMS, while it is, in fact, a framework. However, Drupal does function as a content management system once it is deployed.
- What is Drupal used for?
Drupal can be used to build just about any type of website including blogs, business, portfolio, e-commerce, and social networks. More, Drupal can be used to create custom web applications, such as project management tools and customer relationship management software.
- Is Drupal hard to learn?
Drupal has a higher learning curve than other CMS applications. It requires some technical knowledge, and programming experience makes it easier to work with. However, Drupal is extremely flexible and that is due to its modular framework. Even Drupal's core distribution is built as a series of modules, which makes it open to flexible development.
- What are Drupal modules?
Drupal modules are extension programs designed to be added to a Drupal website to power specific features. Modules may add various features that expand its core functionalities. A large assortment of Drupal modules is available for free from the Drupal project website.
- Can beginners use Drupal?
When it comes to building a website or web application, Drupal is considered to be the least beginner-friendly option among the leading CMSs. Even experienced web developers can expect to encounter a challenging learning curve when setting up Drupal for the first time. However, once a Drupal site has been completely built, non-technical users can learn to add and update content without too much trouble.
- What types of content can Drupal be used for?
Drupal can be used to display any content you want. It has a number of built-in or readily available content types for a wide range of applications. These include blog posts, content pages, products, people, projects, and media. New content types can be created easily through the admin interface, provided by modules, or added with code.
- Are Drupal themes customizable?
Drupal has a theming system that allows for in-depth customization of website presentation. This includes changing the look and layout of your site, but also for providing content in other ways, like through a RESTful API or an RSS feeds.
- What are the system requirements for Drupal 8?
Drupal 8 requires PHP 7.2 or higher. It works with MySQL 5.5.3 (or higher) and MariaDB 5.5.20 (or higher) databases. More, versions 7 and 8 of Drupal provide support for other databases like PostgreSQL. Drupal 8 can run on Apache, Nginx, or IIS web servers.
- Is Drupal available in a one-click installation?
Many hosting plans provide a one-click installation of the Drupal core through the control panel. However, the use of any pre-built Drupal distributions - which can be a real time-saver - usually requires manual installation. Some hosts provide installation support for a small set of popular distros.
- What are Drupal Distributions?
Drupal Distributions provide organized sets of features for specific applications. Drupal developers have created this system of packaged distributions, taking their cue from Linux culture. One of the most powerful features of Drupal is its Distributions Project. For example, there are distributions for education, non-profit administration, churches, government agencies, musicians, podcasters, and news publishers.
- Do Drupal Distributions have additional system requirements?
Alongside Drupal's standard system requirements, some Drupal Distributions may have additional and specific hosting requirements. If you plan to use a specialized Drupal Distribution with your host, be sure to check the specific hosting requirements and that your plan has you covered.
- Will Drupal work on shared hosting?
If you just want to learn Drupal, shared hosting will work fine. However, if you plan to host a large, busy, complex website, a VPS or dedicated server would be a better choice. Shared hosting environments are usually technically adequate for a basic installation, but the types of large, complex sites for which Drupal is a good choice do not usually do well on shared hosting plans.
- What is a content management system (CMS)?
CMS stands for a content management system. A CMS is a software application that organizes content storage, organization, and presentation by making it easy to manage lots of content and control how that content is presented. It can be used to update, remove, and generally manage content.
- Is Drupal a CMS or a framework?
Drupal is a highly modularized content management framework with enough power and flexibility that some developers treat it as a web application development framework as much as a CMS. Outside the development community, Drupal is normally referred to as a CMS.
- How does a CMS manage website content?
A CMS manages the content on your site: webpages, blog posts, products, visitor comments, projects, and so forth. Then, you can create multiple individual instances of each type of content. Further, the CMS enables you to define where each piece of content should appear on your site, how it should look when viewed by a website visitor, and how users should interact with the content.
- How does a CMS manage website design?
A CMS uses a template-based system, called a theme, to duplicate design elements across every page automatically. If you think of a typical website or blog, all of the pages share elements like headers, menus, sidebars, and footers. When you add a new piece of content, it's presented with the same header, menu, sidebar, and footer as every other page of your site.
If you want to change the entire look of your website, you can do so by modifying the theme.
- How does a CMS manage website updates?
CMSs provide a "backend" or administrative interface for adding and editing content. This means that anyone can use a CMS to update the content of a website. As soon as a change is made to the CMS backend, the presentation of that content is immediately updated on the public-facing website front-end.
- How is Drupal different from WordPress?
Unlike WordPress, Drupal doesn't prefer any one type of content over another. All content types are on an equal footing. This makes it especially good for building complex data manipulation applications such as project management tools, CRM systems, online stores, and social media networks. Meanwhile, WordPress focuses on specialist content like blog posts.
That said, both WordPress and Drupal support a wide variety of content types and are ideal for complex architectures.