Updated August 24, 2017
When it comes to selecting a content management system (CMS), like WordPress vs. Joomla vs. Drupal among others, too many people focus on the external elements, like a CMS' reputation rather than on how the platform aligns with their goals, resources, and team - which is what ultimately yields results.
As a marketer, it is your job to deliver results.
Those results may take the form of traffic, downloads, inquiries, sign-ups, leads, qualified prospects or a host of other things. Hopefully, return on investment (ROI) is one of them.
For most marketers, your website is a critical part of your marketing mix. It is the platform you drive traffic to, and derive traffic from by attracting visitors from search engines and social media. As a critical point of confluence for your marketing efforts, the most important thing is that it works. That means the site is up, showing the right content to the right people without errors or issues. Simple as it sounds, it is easier said than done.
We've all been there before - a vanity URL isn't redirecting correctly, resulting in a 404; or a landing page is showing the wrong content or no sign up form; or a new plug-in, module, or extension that should have been a simple plug-and-play addition is causing the site to crash. It is the reason we decided to create this review specifically for marketers.
To make the most of your marketing, you want to invest your time in the areas that produce the greatest results.
Dealing with CMS issues usually isn’t a high-value time investment. Every marketer has different goals and criteria, different resources available to them, and different team members with various levels of comfort and expertise with technology.
We've built many sites using WordPress, Joomla and Drupal, and in our experience we've found that different systems work better for different teams based on the aforementioned criteria. For that reason, this review does not simply declare one CMS "best." Instead, we have ranked each of the top three open source content management systems, WordPress, Joomla, and Drupal, on various factors that can help you determine the best match for your team:
- History, Background and Statistics
- Ease of Use
- Setup, Upkeep, and Maintenance
- Content Manipulation
- E-commerce Support
We've also provided a quick quiz, at the end of the article, to help you see which CMS is most likely to help you succeed. You're welcome to print this article, email it, or share it with your team(s) if you're considering a website redesign and content management systems. And of course if you’d like more information, you’re welcome to explore other options at the conclusion of this article.
Content Management System History, Background and Statistics
Before we get into what makes each CMS unique, we'll cover some of the things they have in common. We should point out, however, as time has gone on they have become increasingly similar, and they will likely continue to do so.
Like every other CMS, each of these has both a front and back end: the website shown to visitors (your audience), an administrative console, and an easy to edit presentation layer. Unlike every other CMS, each of these is an open-source content management system. This means they are free to use by the community.
They are all built for use on a LAMP stack (server using Linux, Apache, MySQL and PHP), which is the most common web server setup. However, they can be forced to use others (Drupal is more readily able to use other databases) and are built to be capable, flexible, and most importantly, freeing and empowering.
The open source movement came about as a form of push back against every web designer/firm having its own proprietary closed-source CMS, which locked you into sticking with that particular vendor or pay the hefty fee of losing everything from your old site when you switch. Open source frees the world of those restrictive shackles and provides you with the freedom to do what you will with your site and change vendors or partners as you see fit.
Each system reviewed here also has the ability to add functions and features as well as edit designs, and a capable developer can customize them for you should you need something that isn't readily available.
Drupal was initially released in January of 2001, but it was originally conceived to serve as the framework for a small site that housed information for some students at the University of Antwerp. It evolved quickly following its release as an open source framework. The platform itself is designed to be incredibly flexible to serve not only as a platform for a website, but also for forums, blogs, network sites, and other applications. The system is a little more technically agnostic than the other systems we're discussing today, as it can work with a myriad of databases.
Drupal is easily expanded by adding to its core files by using modules to expand functionality and themes to control the site design. It is, as of the time of this writing, the third most popular CMS on the web, powering about 4.7% of all websites that use a CMS and about 2.3% of all websites.
Joomla was initially released in August of 2005 as an offshoot of Mambo (a closed source content management system). The system has three levels of user interface: the traditional front end the user sees, aka the website itself; a front end editor that looks similar to the website but includes editing capabilities; and the back end administrative panel from where the site is managed. The platform itself can be extended in several ways using components, modules, and plug-ins that offer various features and functions to the core system.
Using templates, you can totally transform the design of the site. And by using languages, you can provide your site in other languages and character sets. It is, as of the time of this writing, the second most popular CMS on the web, powering approximately 6.9% of all of the websites that use a CMS, and about 3.3% of all websites total according to W3Techs.*
WordPress was initially released in May of 2003 as an offshoot of b2/cafelog, which was originally a blogging platform designed to be added to existing sites. As WordPress grew in popularity, the developer community began to include more and more features commonly seen with more traditional content management systems.
The system has two interface levels: the traditional front end, or presentation layer, which is the website itself, and a back end administration dashboard. There are two ways to extend the platform, the first being plug-ins that are commonly used to add a myriad of functionality, and the second being themes, which are used to control the design of the site.
WordPress is, as of the time of this writing, by far the most popular CMS on the web, powering about 59.2% of all of the websites that use a CMS, and about 28.3% of all websites.*
Joomla vs WordPress vs Drupal - by the Numbers
|# of Sites Using^||2,522,042 ↓||17,674,102 ↑||772,924 ↓|
|# of Plug-ins / Extensions||8,670||36,133||16,561|
|# of Free Templates / Themes||Unknown*||3,023||1,303|
|# of Premium Templates / Themes||Unknown*||~ 10,000+||~ 6,000|
*Unlike WordPress and Drupal, Joomla does not have a template directory. The numbers listed here are accurate as of the time of this posting, though we've linked to their original sources so you can access up-to-date information. However, it would be a reasonably safe assumption that its numbers are closer to Drupal than to WordPress.
↑ / ↓ - This article took months to compose, and these numbers have changed in the meantime. The numbers originally quoted in the text above were accurate as of their time of research, whereas the numbers in the chart above are accurate as of the time of this article's posting. As of the latest update to this article, the number of sites using Drupal and Joomla have decreased slightly and WordPress has increased.
^ - These numbers are updated on an ongoing basis. Statistics last updated on October 7th 2016. From Aptil 18th to October 7th Joomla usage has continued to fall, Drupal usage has fallen, and WordPress usage has climbed. (April Statistics for Joomla; 2,804,392, Drupal; 814,040, WordPress; 16,276,583.)
Ease Of Use
When it comes to managing a website, one of the most important (and often under-appreciated) virtues of any CMS is how easy it is to use as far as site management and administration across all user roles and levels. This includes not only the initial training and learning curve to become acquainted with the system, but also how easy it is to use on a day-to-day basis.
Drupal is mostly designed to act as a tabula rasa, a blank slate to be customized on all levels. Therefore its out-of-the-box interface is relatively clunky, though entirely functional. Even for users who have experience with other CMS platforms, or those comfortable with some code, Drupal has the steepest learning curve of the three.
Drupal, by default, does include a front-end editor of sorts as well as a back-end dashboard. The front-end editor is easy enough to use, and it increases in capability with many of the modules and customizations most developers will make to it.
The user roles in Drupal differ greatly from those of Joomla and WordPress, as Drupal user roles are entirely customizable. You may enable and disable functions and access to content areas based on user roles. For that reason, Drupal is one of the easiest systems to set up if you have a team with users who should only have permission to create or alter certain types of content.
These default settings have given Drupal a reputation for being difficult to use, but the reputation isn't entirely fair - the tool was built to act as a blank slate to be customized and turned into whatever you need it to be. As Einstein said, you don't judge a fish by its ability to climb a tree.
It is also unfair to judge Drupal by its default settings, as it was designed to be customized. However, these customizations bear a cost of both time and resources. For this reason, I consider it the most difficult of the three to use out of the box, but we’ll revisit this point later, as Drupal’s tabula rasa mentality may make it the best fit for your unique situation.
Joomla has attempted to make its administrator dashboard intuitive; however, if you've had experience with other content management systems, or even some other popular web-based applications, it may take you a little while to become comfortable with the system. However, one of Joomla's strongest points when it comes to ease of use is Joomla's consideration of user levels. Whereas many content management systems provide a binary level of user interface (you're either a site visitor, site manager, or administrator in some capacity). Joomla offers the traditional website visitor access, as well as front-end editors and back-end editors and administrators. The front-end administration area is a very easy way for neophytes and lower-level users to manage content.
Joomla Front-End Roles
- Registered - This is a registered user level used to provide visitors with access to protected content like a course, forum, or downloadable materials, among others.
- Author - Can create content (but cannot publish it themselves) and can edit their own posts (and no one else's) once the posts are published.
- Editor - Can create content (but cannot publish it themselves) and can edit content created by other users both before and after being published.
- Publisher - Can create content, as well as edit and publish content created by any users. A publisher can also change content visibility permissions to restrict content to certain users.
Joomla Back-End Roles
- Manager - Similar to Publishers, Managers also have access to the back-end of the site with some additional permissions regarding content.
- Administrator - Is able to access most everything within the site to alter content, as well as most settings and configuration options. These users can also add extensions and templates, among other settings.
- Super Administrator - Is able to control everything within the site, be it content, settings, users, configuration settings and anything else.
Joomla provides a different interface for different user roles, and thereby provides them with a different experience matched with the needs of their role. While not immediately intuitive, with some learning, especially as you get into more complex capabilities and customizations, you'll find it to be powerful while remaining relatively easy to use.
The core of WordPress' popularity lays within its ease of use. It started as a dedicated blogging platform meant it had to be intuitive and easy to use, as most of its users were lacking in technical knowledge, at least compared to a developer. For this reason, WordPress is incredibly intuitive, and users familiar with word processing tools like Microsoft Word will find WordPress simple to use from the start.
In its early years, this ease of use was a double-edged sword, because it required some compromises in terms of complex functionality. This caused some developers to deem it too lightweight to be a full-fledged CMS. However, in the past few years, WordPress has been more widely embraced by the developer community, undoubtedly in part because of its popularity and market share, but also because of some major technology improvements to the core platform itself.
Without extension or customization, WordPress puts users into one of two categories: (1) front-end users, who are website visitors of some sort and (2) back-end users, who can manage content or administer the site on some level. There are five default user roles built into WordPress, and they all share a common interface, though with permission to access different options and abilities.
WordPress Back-End Roles
- Subscriber - Can only manage their profile; these users have a role to enable them to receive updates on site content, as well as leave comments or access protected content (if applicable).
- Contributor - Can create and edit their own content, but do not have the ability to publish it.
- Author - Can create, edit, and publish their own content.
- Editor - Can create content, as well as edit and publish the content of others.
- Administrator - Can control all site content, as well as plugins, themes, users and other setting and configuration options.
An intuitive WordPress interface makes it easy for new users to get started, and the consistency of experience across user roles makes it relatively painless for users to master the system with time.
Ease of Use Rankings:
WordPress 1, Joomla 2, Drupal 3
If a content management system needs to do one thing, it is manage content. This includes inputting or creating content, formatting it, and then making it available for display to users. It also includes maintaining and updating the content on an ongoing basis.
Drupal offers a handful of default content types out of the box: Articles used to be called a "story" and are comparable to WordPress posts. Basic pages are generally used for static pages and are akin to WordPress' pages as well. Drupal also offers, by default, a book page, which is a collaborative type of content many users can add to. Forum topics are exactly that, a topic for a forum on which comments and reply threads are added. Polls offers a question with a set of possible responses on which community members can vote.
These default content types already show that Drupal is built to be used for more than just a website. It offers several community tools that enable you to add the dynamic of user generated content to your site as well, all by default. Drupal also uses something called blocks, for content that is used more as an aside, similar to WordPress widgets. It is worth noting that Drupal 8 has made blocks much more powerful and easy to use than previous versions.
However, the most powerful element of Drupal is the ability to easily create and define your own content types. They may be based on the aforementioned default content types, or you can create entirely new content types with different functions, features and capabilities. As it is designed to be a blank slate, you could add a number of content types with different sections, headings, built-in video embeds (or many other multimedia elements), like white papers, case studies, webinar recaps, demos, etc. You can also create, with a bit more effort, composite content types that pull various elements from other content types you've previously defined.
While I believe Drupal to be the weakest combination of capability and intuition out of the box, we've found it to be a powerful platform on which you can build some very complex capabilities. If your team knows Drupal, it will be customized in such a way that by the time you've gotten into the day-to-day management of the site, you'll find it to be powerful, and with some time invested in training (think hours not days), easy to use on an ongoing basis.
Pro tip - We suggest you record all of your training sessions (we do), so as you add members to your team you can simply let them watch the training rather than walk each new recruit through the site yourself.
Out of the box, Joomla stores content as articles. Users create articles for all kinds of things: Joomla's primary content type is an article. Article content is then attached to a menu in order to be displayed on the site. Additionally, you can place content in different areas thanks to the way Joomla uses modules, which can take various positions as you see in the map.
While this is certainly not the simplest or most intuitive setup, especially for those who may have prior experience with other systems, it is well worth learning and is incredibly powerful once you get the hang of it. Joomla natively offers the ability to abide by a create once publish everywhere (COPE) mentality for content. Its structure makes it possible to use content in multiple ways throughout your website, such as repurposing a blog post as a page, an event, and an article simultaneously.
WordPress is the most straightforward when it comes to creating content and offers three default content types: post, pages, and media. Its roots as a blogging platform mean that for some websites, WordPress is used for the blogging capabilities alone. (If you're going to do this, we recommend you install WordPress to a subdirectory, not a subdomain or different domain all together.)
Pages are exactly what they sound like - website pages. You build them, add them to the menu, and that’s it - you’re ready to go. Relatively recent changes to WordPress made its menu system more powerful and added a drag-and-drop editor for managing menu structure.
Posts are exactly what they sound like - blog posts. You build them, then publish and they are added to your blog, with a time and date stamp. They’re also automatically added to your RSS feed. Posts can be assigned categories and tags, so they can be easily archived and sorted.
The media content type is used for storing and organizing images, videos, PDFs, or other files. WordPress’ media uploader allows for drag and drop uploading, file size limits, automatic image resizing and editing (including enhancing and cropping) and a visual gallery for management. It also includes built-in photo gallery tools.
In addition to the three default content types, WordPress also uses widgets, which are used to store little bits of various content that wouldn't be considered pages or posts. Usually, widgets contain things regulated to a sidebar or footer, though some WordPress themes make very creative use of widgets and offer a lot of flexibility.
WordPress' simplicity in this regard can also be considered a shortcoming, as it doesn't provide many ways to re-use existing content differently. While many may not need it, it can become a limiting factor depending on the type of content you create. However, WordPress does offer the ability to enable what they call "custom post types," which allow you to create your own types of content (such as videos, case studies, etc.) in a manner that is more consistent with Joomla or Drupal.
WordPress also keeps content types separate, which can make reviewing and creating content less overwhelming than alternatives. However, it can also be more difficult to change the type of a specific piece of content - for example, if you wanted to convert a blog post to an event.
Content Manipulation Rankings:
Drupal 1, WordPress 2, Joomla 3
Setup, Upkeep and Maintenance
One of the most frequently overlooked and underestimated tasks that comes into running any website these days is what it takes to set up and, more importantly, maintain. This includes a from-scratch start and the long-term regular maintenance required to keep the site stable.
Please note that many hosting companies offer one-click installation for all three of these platforms (often via Fantastico). While simply installing them isn't all that the setup entails, the one-click option can save a lot of time and hassle - especially if you don't need to worry about significant scaling challenges or custom set ups.
For as much of a blank slate as Drupal is designed to be, it is surprisingly straightforward to set up in a bare bones manner. Unlike the other two platforms, Drupal is meant to be customized more before truly being used, but it does act as a functional, albeit poorly designed, website out of the box. While I would give Drupal a better ranking for setup than Joomla, it loses the hand when it comes to maintenance. Because it is created to be customized, a lot more is riding on each change, which includes more chances for issues, conflicts, and errors.
For this reason, it hasn't been very practical for Drupal to adopt a rolling release as the other two have. Instead, Drupal opts for Major releases (upgrades) and Minor releases (updates), which are designed to be exactly what they sound like. While updates aren't usually too troublesome to manage, they still pose a greater risk for conflict than a "major" release for either of the other platforms discussed here. Drupal's Major releases can often be a headache, as at the least they are usually a time consuming manual task and at worst can require a lot of updates and customizations to your platform to remain compatible.
Years ago, Joomla was considered one of the easiest content management system setups you could ask for. Granted, that was also during a time where non-technical folks wouldn't even touch a website's back end, and easy from a developer's standpoint is far from easy for your standard non-technical team member.
That all said, Joomla, for a long time, rested on its strong reputation with the development community. Only recently has it adopted a rolling release (similar to many current softwares that update on a rolling basis, i.e., Firefox, Chrome, Evernote, WordPress, and the vast majority of other popular softwares).
Joomla hasn't quite caught up with the others in this category, and while it isn't impossible for someone with a development background to launch and understand, if they don't have the necessary experience, it isn't exactly an intuitive process. Upkeep is getting better with rolling updates and better reverse compatibility, but it still has a ways to go, in my opinion.
One of the biggest factors in WordPress' rise to prominence is the fact that it is easy to use. If you can't install something, it isn’t considered easy to use. WordPress' claim to fame even when it first came onto the scene was that it could be installed and running in five minutes. There are a TON of WordPress' Famous Five-Minute Install videos online (ironically, some as long as 17 minutes). While it takes some practice to have it truly go from zero to 60 in five minutes, it isn't much of a stretch to get it unpacked, even for a relative neophyte.
WordPress also adopted a rolling release before either of its counterparts did, and as you take more of the onus off the administrator, the more streamlined things will usually be. With its plethora of plugins, there is the occasional conflict or bug, but for the most part it is smooth sailing with WordPress updates. (However, its popularity does encourage more hackers to probe plugins for weaknesses, meaning more frequent patching is sometimes needed. See Security.) WordPress also allows for one-click automatic updates.
Setup and Upkeep Rankings:
WordPress 1, Drupal 3, Joomla 2
It is an unfortunate fact, but the reality of the current day is that there is a never-ending line of people attempting to hack your website. From cross site scripting to script injections, from zero-days to brute force attempts, from distributed denial of service (DDOS) attacks to simple software vulnerabilities ranging from things like Heartbleed to your everyday security issues.
Regardless of the who and why behind these attacks, your website will find itself assaulted by a myriad of enemies the very day it launches. In this category, we look at the total number of known security vulnerabilities from the last several years to the core of each CMS, their popular plugins, as well as the severity of these issues, time until detection, and time until correction (patching). Using these metrics we've compiled a score for each and share the concerns you may have with each system. We'd also like to thank the folks at CVEdetails.com who keep track of this stuff.
Please note, we did not include vulnerabilities that affected the platforms on which these sites function, like Heartbleed or Shellshock. (XKCD shows how Heartbleed worked, very simply, if you're interested.)
Since 2005, Drupal has had 312 documented vulnerabilities, three of which have been documented as knowingly exploited. (Based on our experience, this number should be higher, but perhaps lacks the proper documentation.) Drupal had 35 documented vulnerabilities in 2014, but it is not known how many of them were knowingly exploited.
As with Joomla and WordPress, the most vulnerable area of Drupal is its modules. As Drupal commands the smallest marketshare of these three CMSs, and its users are often the most technically savvy, Drupal modules are usually targeted less, despite the larger number of documented vulnerabilities in 2014. In October 2014, however, there was a major security vulnerability discovered in the Drupal core that affected a large number of Drupal powered sites. Drupal’s lack of an automatic update measure made it difficult to spread the word about the vulnerability to compromised users as well.
- Vulnerability to exploit ratio since 2005: 12:1
- Vulnerability to exploit ratio since 2014: 4.24:1
- Average vulnerability severity since 2005: 5.2/10
- Average vulnerability severity since 2014: 4.85/10
Since 2005, Joomla has had 336 documented vulnerabilities, 135 of which have been knowingly exploited. However, Joomla had only 10 documented vulnerabilities in 2014, and only one of those was knowingly exploited. It's worth noting that this one exploit was in a third party extension, JV Comment. In 2013 a major vulnerability was discovered in the very popular extplorer extension. It was a very low level exploit and was patched quickly. While 2005 to 2010 were unkind to Joomla (it was also targeted more over this time frame as it had a larger marketshare), since 2010 Joomla has had very few total vulnerabilities and even fewer exploits. And, thanks to a very dedicated Joomla Security Strike Team (JSST), Joomla has seen very few core vulnerabilities as of late.
- Vulnerability to exploit ratio since 2005: 2.7:1
- Vulnerability to exploit ratio since 2014: 40:1
- Average vulnerability severity since 2005: 6.59/10
- Average vulnerability severity since 2014: 6/10
Since 2005, WordPress has had 301 documented vulnerabilities, 43 of which have been knowingly exploited. WordPress had 29 documented vulnerabilities in 2014, but it is not known how many of them were knowingly exploited. Of the vulnerabilities discovered in 2014, 23 were core WordPress vulnerabilities, the remainder were plug-in vulnerabilities. Some of the plug-in vulnerabilities were quite serious and affected some very popular plug-ins, including RevSlider, FancyBox, WPTouch, and MailPoet. Popular plug-ins are often a target for hacks and malware, as they are usually less secure, have less oversight, and still command high numbers of sites which can be affected.
WordPress' wild popularity and the subsequent popularity of some of the most commonly used plug-ins makes them subject to frequent targeting. When it comes to core vulnerabilities, WordPress has a reporting process and is very quick to respond and patch.
- Vulnerability to exploit ratio since 2005: 6.81:1
- Vulnerability to exploit ratio since 2014: 2.09:1
- Average vulnerability severity since 2005: 6.2/10
- Average vulnerability severity since 2014: 4.9/10
As a preface to the score, it should be known that with proper passwords and security measure in place, all three of these systems are, all things considered, about the same in terms of security.
Usually, the greatest risk for any site is the users and administrators of the site. One cracked email account with a username and password can unravel all the security in the world. Folks who know how to use these systems and monitor them on an ongoing basis will usually be able to prevent most vulnerabilities from being exploited, by patching quickly. It is one of the major reasons we suggest using managed website hosting, instead of traditional website hosting. Flukes like the Drupal vulnerability mentioned above are a risk for any CMS, and each of them have had their share. Drupal's was just the most recent.
Security Rankings (Core):
WordPress 1, Drupal 2, Joomla 3
Security Rankings (Plug-ins/extensions/modules):
Drupal 1, Joomla 2, WordPress 3
Security Average Rankings:
Drupal 1, WordPress 2, Joomla 3
Like it or not, no website on any platform is going to be totally hassle free. At some point you, or someone on your team (be it in house or a partner or contractor) is going to have to do some troubleshooting on your site.
Sometimes it'll be the best kind of troubleshooting - an issue that doesn't take the site off line and is a relatively minor nuisance. Sometimes it'll be the worst kind of troubleshoot - an issue that flat lines your whole site during one of your highest traffic periods and is actively costing you money each moment it's down. In either instance, the less time it takes to resolve the issue, the less it will cost you in time, money, and opportunities, and the happier everyone will be.
It is worth noting that it will alleviate much stress from your life if you keep frequent regular backups of your site. It is often much easier to simply restore than to attempt to blindly stumble through an effort to diagnose and solve an issue with any of these systems.
The Dr. Jekyll and Mr. Hyde of the three is certainly Drupal. As Drupal acts as a blank slate, it often means you'll be customizing it more before putting it into use. If you're writing this code, then you'll be very familiar with it, and as issues arise you'll have a better chance of figuring out what the issue might be. If you're working with a contractor who is creating this code, at a bare minimum make sure you include thorough documentation as a part of your project price, as you'll want it for when an issue does rear its head. Ask for it even if the contractor building the site will be maintaining it - you never know what might happen. However, if you’re not familiar with the core code of your site, fixing issues can be very difficult.
The complexity of Drupal also means there are far more potential issues to keep tabs on, whether it be a problem or conflict with a module or trouble that arises thanks to a major (or minor) version upgrade.
Bottom line is if you're developing in house and are familiar with the code, chances are you'll be able to troubleshoot most issues with as little hassle as possible (that isn't to say none, it will likely still be quite a pain in the ass, but not as bad as it could have been). If you're working with an outside firm, at least get documentation, otherwise you'll be in a bad way.
Joomla's ability to leverage content in a very multifaceted manner is one of the strongest elements of the content management system itself. This multifaceted approach does layer complexity into the system, which has a beneficial polarizing effect when it comes to many issues.
For many issues, you can usually determine where or what is causing the issue, which is good as far as pinpointing the problem goes. The problem is that if the problem is any more complex than simply disabling or removing something, it is likely much more complicated.
Issues with Joomla can arise from conflicts or problems within or between its themes, modules, add-ons, or extensions in addition to the server and software level issues that can affect all of the platforms we're analyzing here.
The amount of effort WordPress puts into being user friendly to non-technical people begins to wear thin when it comes to troubleshooting. While some issues are as easy to correct as updating or re-activating a plugin, most issues are far less benign.
Anyone who has used WordPress for an extended period of time has been exposed to "the white screen of death." This is a delightful treat in which your WordPress install refuses to show your website's front end and fails to display the back end, leaving you to attempt to solve the issue via your control panel, FTP, or SSH connection. There are a myriad of causes that can present the white screen of death, from a plugin conflict to an issue with the theme, to a server conflict. If you're technically inclined, reviewing your logs will often help you troubleshoot the issue, though even then sometimes a restoration is the simplest solution.
However, WordPress’ large user base means that there are a lot of resources out there to help with troubleshooting even the most obscure issue. There are also a number of automated backup and restore services designed specifically for WordPress.
The community around a piece of software is the single most critical element to its success when it comes to the open source movement. It's what's allowed Linux to grow from a single installation in 1991 to powering 36.9% of the world’s consumer electronics (smartphones, tablets, laptops, and desktops) about 68% of the world's web servers (98% of the top million web servers run Linux) as well as serve as the foundation for the impending Internet of Things (IoT), as Linux is the most common platform in use for routers and smart devices as well as microcomputers like the Raspberry Pi.
In much the same way, the three open source content management systems we're exploring here are responsible for managing about 20 million separate websites, 73% of all sites that use a content management system and over 25% of all the websites on the web.
These communities serve as a distributed research and development department, testing lab, brainstorming hub, and much more all wrapped into one. The communities that adopt and support these platforms enable them to iterate faster and in more directions than closed source competitors, discover and solve more issues in less time, and iterate in several directions and niches at once.
While Drupal is the oldest platform on this list, because of its focus on more technically savvy audiences it does have the smallest community. That said, even the smallest of these communities boasts thousands of active users through discussions, contributions, and events. This limited size has its benefits and drawbacks. A benefit is that the community around it is, for the most part, very knowledgeable about the platform itself and capable of supporting a wide array of customizations and build outs. Responses to questions are usually very insightful and there isn't much wasted time or noise in support or FAQ threads.
A drawback is that fewer people working on something means releases usually take more time to come out, and that iterations can't happen in as many directions as quickly. This limits the availability of modules to use with Drupal, and as it is the smallest, it also is less of a contender for developers who are creating a new super-useful module or plugin. This means if you want that functionality, you'll likely end up investing the time to build it yourself.
Joomla was built and launched as an offshoot and had a built-in community supporting it on day one. This community grew rapidly, and the dedication the community shows to both Joomla and the open source movement (the stone upon which Joomla was founded) means it still gets my vote for the most loyal community behind any of these systems.
The community itself is the middle child of the three systems we're comparing today. It’s large enough to have more than a significant number of developers working on it at a given time. The transition to a rolling release and a slew of other frequently requested features show that the community knows it has to make up some ground to remain current. The user community is large enough that it warrants a fair amount of attraction for developers to create extensions and add-ons for the platform. It is also consistently welcoming and appreciative of new members.
(Personal note: In many ways I feel Joomla's mindset is similar to that of Avis in the ‘60s - "We try harder.")
Boasting the largest community of the three (by far), the WordPress community is, in some ways, more segmented than either of its peers. While Drupal and Joomla both have members that fall all over the scale of expertise with the system from newbie to expert, they have a higher concentration of users on the expert side of the curve. WordPress seems to have users who are more stratified within the community across four levels:
- Community Core: The team at Automattic (the company behind WordPress) and its tier of super committed and experienced members/users.
- Expert Developers: They contribute by creating themes and plugins and reporting, troubleshooting, and fixing issues in addition to activity within the forums.
- Advanced Users: These users may not have much technical expertise but use WordPress regularly and often pose questions/requests.
- Inexperienced Users: Newer users or users of the blog-only platform (see WordPress.com vs WordPress.org) have very minimal experience.
The size and breakdown of the community yield some interesting results. WordPress is by far the juggernaut in terms of developer attention. Hundreds of companies exist who do nothing but create WordPress plugins or themes, and this commercial viability makes it a more appealing platform for new developers as well.
This means that WordPress often boasts the latest and greatest in terms of capabilities and extensions (or is among the first to catch up if it isn’t the first to innovate) and is able to iterate in several directions simultaneously.
The downside of the community is that there is a significant amount of noise within their support forums, be it repeatedly asked questions or inexperienced or unknowledgeable people responding with answers. It can be troublesome to find solutions if you're searching for them. That said, most issues do seem to get addressed quickly, it is just a matter of finding the answer among the noise.
The size of the community also means that even if you’re having a very obscure issue or conflict, chances are someone else has had the same issue and found a solution – so you’re never on your own.
As the web becomes ever more interconnected, and with the impending growth of the Internet of Things (IoT), the ability to easily integrate two systems, platforms, or accounts is becoming more and more important.
Be it the simple ability to automatically post news updates to Twitter or the more complex integration of creating a seamless user dashboard that aggregates information from multiple systems into a single overview, at some point you'll need to integrate your site with other systems. Your CMS, above all other elements, is going to play the largest role in how easy or difficult, how fast or slow, and how cheap or pricey those integrations are.
To score these, we've indexed how ubiquitous each CMS is in terms of built-in integrations with the most popular platforms for analytics, video, accounting, payment, email, marketing automation, customer relationship management, social media, project management, storage, mobile, and other categories as showcased below.
Please note that while we have tested a lot of these integrations, we've not tested all of them, and we certainly haven't tested all of them in every permutation and use combination. While a checkmark here does indicate integration should be straightforward, it certainly isn't a guarantee.
We also haven't bothered mentioning if an integration is possible via embedding, like embedding a video or signup form, because all three platforms support these embeds equally easily.
✓ = Yes 3p = via 3rd party
|Customer Relationship Management (CRM)||WordPress||Joomla||Drupal|
|Video & Multimedia Platforms||WordPress||Joomla||Drupal|
|Landing Page Platforms||WordPress||Joomla||Drupal|
|If This Then That||✓|
Again, thanks to its popularity, WordPress takes the lead here. Not only is it more easily integrated with more platforms and easier to manage via other platforms, it also has a host of additional platforms that were built around WordPress specifically.
Drupal's community does a great job of setting up basic integrations with just about any major API, but usually it'll need to be refined a bit to be of any use. Only the most basic ones are plug-and-play with Drupal. Joomla's integrations are almost entirely created by third parties, and for that reason their reliability is suspect.
On a purely anecdotal point, we've seen far more cases of Joomla integrations failing to function as advertised than on either of the other two systems. We haven't factored that into the rankings as it is our own experience, but feel it warrants being mentioned.
WordPress 1, Drupal 2, Joomla 3
As we noted previously in this article, one of the major factors that contributed to the rise of open source content management systems is the fact that before they existed, every content management system was proprietary.
That meant if you created your site on a CMS, you were stuck with it. If you wanted to undergo a redesign, or change to an easier to use platform, or your old platform wasn't being maintained, you'd lose all the work you'd put in. Or at least you’d be forced to manually copy and paste everything page by page. An open source CMS allows you to own and control your content rather than have it stuck in a closed third-party system over which you have no influence or control.
However, despite the progress we've made, it can still be a hassle to migrate from one platform to another. This section ranks each CMS on its ability to import content from other platforms as well as how easy and usable content exported from the platform is for use elsewhere.
Drupal's flexibility as a platform is a major advantage here, as with some initial configuration it can be made to accept an import of just about any website export from open and many closed source platforms. While it does require more initial effort, it can save vast quantities of time when it comes to making the migration itself.
Additionally, it can be set to accommodate many of the little quirks that appear in site migrations and play nicely with them.
Joomla is surprisingly easy to import most sites into. There are a host of plugins designed to import sites from other systems and have them in almost ready-to-go shape when the import is complete. Joomla's flexibility in managing content of various types in different ways makes it extraordinarily versatile in this regard.
Joomla is able to import everything from very basic sites with a straightforward page structure to more multifaceted sites with several types of content used in different ways.
Even though it wasn’t always the case, WordPress has recently made several advances when it comes to importing (and exporting) content from other platforms. The core WordPress import tool can natively handle content from Blogger, Blogroll, LiveJournal, Moveable Type, Typepad, RSS feeds and Tumblr.
There are also numerous tools available for importing Joomla and Drupal content. That said, it isn't going to migrate highly complex or enterprise level sites that use closed or uncommon content management systems without a lot of additional effort.
Ease of Transferability Rankings for Basic Sites:
WordPress 1, Joomla 2, Drupal 3
Ease of Transferability Rankings for Obscure/Complex Data:
Joomla 1, Drupal 2, WordPress 3
Ecommerce functionality is becoming less and less of a luxury and more and more of a requirement for any organization's site - be it for accepting simple payments for services or products, subscriptions, membership access, events or a multitude of other offerings. There are numerous ways to integrate payment capabilities into a website (see integrations above) but it's another thing to add full-fledged e-commerce support to your website.
This section ranks each CMS on its ease and ability in setting up a reliable and multifaceted e-commerce component for someone who hasn't done it before. All of these platforms support e-commerce of all types, from the most basic to extremely complex, but for some it takes a significant amount of experience and knowhow to set up (and in some cases to maintain) these capabilities. With the right initial build out and training, we believe anyone could manage to run an e-commerce site on any of these platforms.
While I hate to continue to refer to Drupal's default tabula rosa status, it plays a critical role in this case. Some variants of Drupal are built to be e-commerce sites out of the box (like Drupal Commerce's Commerce Kickstart).
While difficult for someone without Drupal experience to use, it is far simpler than one might otherwise expect.
Joomla's e-commerce capabilities are built entirely through third party extensions, three of the most popular being VirtueMart, Eshop and HikaShop. These extensions have been in use for a long time and can transform a Joomla site into a full-fledged e-commerce website.
However, they do take time to set up and integrate, and while they'll inherit a number of properties from your existing site, there is still quite a bit of customization required to get everything functioning as you'd like.
WordPress boasts a host of e-commerce plugins and carts, but a recent move by the Automattic team to acquire (and likely integrate) WooCommerce has provided WordPress with an extremely easy-to-use e-commerce platform.
WooCommerce, while still requiring quite a bit of setup and configuration, is the closest to obtaining plug-and-play e-commerce capability out of any CMS compared here.
E-commerce Support Rankings:
WordPress 1, Drupal 2, Joomla 3
When it comes right down to it, there are just certain things with any system or platform that resonate with one person and repel another. In most cases there are two kinds of people: Android or iOS, Google or Bing, GoToMeeting or WebEx... but in our case there are three kinds of people. We find different systems tend to work well with different types of people, and while we certainly don't know all the reasons that factor into it, we do know that there seems to be a little something intangible about each of these that gives it a special place in the heart of its fans, supporters, users, and development communities.
While Drupal has grown more slowly than WordPress its growth has been from a pool of people with much more technical expertise and experience. The fact that in many ways Drupal is the antithesis of WordPress is largely what gives it its appeal to this select audience.
Simply being well versed and capable enough to use it gives you a level of developer cred that neither of the other systems reviewed here will. To draw a parallel, Drupal is to Harley-Davidson as WordPress is to Honda. And Joomla is probably a Kawasaki, or maybe a Yamaha.
None the less, its biggest intangible appears to be the combination of the fact that it is an incredibly powerful platform and that not just anyone can pick it up and use it... you gotta earn it.
As the middle child, Joomla has a bit of both going for it. It isn't quite as easy to use WordPress, but it is easier to use than Drupal. And while it isn't quite as powerful as Drupal, it is (in many ways) more powerful than WordPress. This places Joomla in the no man's land between WordPress and Drupal, or as Hunter S. Thompson might say, Joomla is "Too weird to live, too rare to die."
It has some cred, especially among its own users. But more importantly, people with experience with Joomla know that out of the box, its ability to re-purpose content quickly and easily across formats and types is unparalleled... so long as you know how to use it.
However, it is worth noting that Joomla’s user base has shrunk over the past few years. If this trend continues, it could mean updates and patches may become few and far between.
WordPress has managed to retain much of what's made it so attractive to so many people for so long, and that is an intuitive and usable dashboard. Its ease of use usually makes it one of the first platforms for students, hobbyists, and reluctant professionals alike. After some tinkering, almost anyone can get the hang of it and put something presentable online.
While it has gained some weight over the years, it is still by far one of the simplest systems to learn and provides a vast array of easy-to-integrate capabilities via its robust theme and plugin libraries. Its relative ubiquity compared to the other two also makes it something of a conversation starter, as a CMO from a large corporation and a solopreneur can share their experiences with the system.
In addition, between WordPress’ large (and growing) user base and Automattic’s acquisitions of complimentary software, WordPress could be argued to be the most future-proof of the three CMS options, in terms of support, updates, and compatibility with as-of-yet unreleased technologies.
WordPress 1, Drupal 2, Joomla 3
The table below summarizes the scores for each content management system in each of the sections above.
|Ease of Use||1||3||2|
|Setup, Upkeep, & Maintenance||1||3||2|
|Transferability (Simple Sites)||1||3||2|
|Transferability (Complex Sites)||3||2||1|
Summary and Next Steps
As we shared at the start of this article, no CMS is "best" just as no vehicle is "best." We hope this review has helped you determine which CMS may be the best fit for your unique blend of resources, objectives, and personnel. If you're still not sure which CMS is right for you, we've provided two simple next steps you can take.