When it comes to CMSs, WordPress, Joomla! and Drupal are the three leading names today. All three are open source software, and are free to use and customise. Each has its own community and user base, as well as a well-maintained repository of themes/templates and plugins/extensions. And all three have their pros and cons.
But before we go any further, it is worthwhile to point out that using (or not using) a particular CMS also involves a matter of personal taste. What works well for me may not work for you! Thus, if Drupal is already your favourite, and you hate WordPress — or vice-versa — this article does not intend to belittle or alter your preferences. The aim here is to simply compare three of the most popular CMSs.
WordPress began as a blogging tool, but of late, has evolved into a full-fledged CMS powering the likes of The New York Times (Blogs), The Lance Armstrong Foundation, Miley Cyrus, Sylvester Stallone, Harvard Gazette, Mashable and, if I may add, LINUX For You. So if you’re using WordPress, you sure are in good company! You can disable comments/trackbacks, use static pages, and tweak your website by using widgets and plugins.
Make no mistake about it: WordPress has the easiest interface (as compared to most other CMSs). Furthermore, it also has many plugins and themes that can help you customise your website even if you are not comfortable with code and Web development. In fact, WordPress has the shallowest learning curve of all the three CMSs under review. Plus, the official documentation is so well supplemented by several community blogs all across the Internet that if you ever run into any trouble, you can be sure that help is at hand.
WordPress is in active development, and fixes/patches are released frequently. On the downside, these patches seem even more necessary for WordPress because it appears to be more vulnerable in matters of security compared to Drupal or Joomla! — over 50,000 WP websites are infected with spam. However, this number can also be attributed to the fact that WordPress is the most popular CMS out there, and thus, is more prone to such attacks.
Drupal has enjoyed a (rather unfathomable) distinction for being the most “developer-friendly CMS”. For quite some time, working in Drupal meant living without ready-made tools such as WYSIWYG editors to aid you — if you were using Drupal, you were hand-coding each and every element of your website, period. In other words, if you were using Drupal, you were actually employing one of the most complex tools on the Internet to build a website!
However, with the advent of Drupal 7, this has changed. Now Drupal, too, is as user-friendly as a CMS can be. Modules such as Panels, Webform and Views make website creation very simple for the end user, and such features are expected to progress even further in upcoming releases.
On the downside, Drupal can’t beat WordPress when it comes to user-friendliness, and this is one of the main reasons why WP is winning converts. Unlike WP (which is run mostly by a small group of developers), Drupal is more of a framework CMS nurtured by a large community of developers. Therefore, Drupal grows as developers fix/create things that matter most to them. The plus point is the loyal community that is always willing to give back to Drupal. On the negative side, more often than not, a newbie to Drupal is greeted by the, “if you don’t find/like it, please feel free to contribute,” syndrome.
Joomla! is another amazing CMS that powers many websites, and is in active development. The name “Joomla” means for “all together” (in Swahili), and the CMS does live up to its name. If WP is ideal for newbies and Drupal for developers, Joomla! attempts to cater to end users, designers and developers alike. The CMS is flexible and customisable, and boasts of a large community, as well as numerous extensions and templates.
With each release, Joomla! has shown a steady pace of development. However, there is still a long way to go, in comparison to WordPress and Drupal. For instance, when it comes to out-of-the-box SEO, Joomla! lags behind Drupal. While the admin panel lets you do virtually everything — from publishing articles to sending newsletter emails, running a big website with Joomla! can get confusing.
Also, from a developer’s perspective, Joomla! is not the first choice for a CMS any more. While Joomla! does have its share of talented developers using it, personally, all developers that I have seen using Joomla! swear at it in frustration at some point of time. The community too, though huge, mostly comprises relatively newer users figuring out how to get that particular thing done in Joomla!
To further illustrate the usability and modus operandi of each CMS, let us perform a simple task using each one of them — posting an article to the website.
In WordPress, the Article Editor is straight-forward WYSIWYG. You can enter the title, use the Toolbar to format the text, select categories and tags, and publish your post!
WordPress Post Editor
In Drupal, the same process, though relatively more complex, can still be done with ease. You need to specify the title, tags and the text. Following that, you can set options for Menus, URL Alias, Revision Logs, Author Metadata and Comments. The same features are also available in WordPress, but are hidden by default. This is where WP wins — the great level of abstraction not only simplifies the CMS, but also makes it extremely usable. In Drupal, there is no (simple) way to hide the unnecessary fields in the Article Editor.
Drupal Article Editor
Coming to Joomla! — Code Mirror has been introduced in version 2.5, but it strictly caters to a specific genre of users who like to post their articles in HTML/code, rather than use WYSIWYG. The default TinyMCE Article Editor has the same Toolbar as that of WP, but the layout and interface is confusing. You can set the categories, tags, author metadata, comment moderation values, etc.
In terms of Article Properties and Permissions, you can set its parents/children, visibility settings, etc. Obviously, such features are not needed by everyone. Again, WP and Drupal do away with such bloated mechanisms. If you need to specify Permissions/Properties, you can do so by means of plugins/extensions in either WP or Drupal. Otherwise, more often than not, WordPress and Drupal do not bombard you with such relatively unused features.
Joomla Article Editor
Let us now come to the other major factors that determine the USP of a CMS.
WordPress is notorious for being the least secure CMS. While this is definitely because it is the most popular CMS, and thus relatively easier to hack, it still cannot be denied that newer security loop-holes are discovered in WP way more often than in either Drupal or Joomla! Furthermore, WP plugins and themes too come with their share of hacks and exploits.
Drupal, on the other hand, seems to be the most secure CMS of the three, with the least number of hacks and exploits, on an average (it was chosen by The White House for its website, after all).
In terms of freely available extensions and templates, all three CMSs come out evenly matched. However, it is in terms of commercial themes and extensions that WordPress wins the race. WP is supplemented by numerous commercial extensions’ marketplaces, such as Theme Forest, WooThemes, etc, who specialise in WP extensions. Sadly, the commercial extensions for Drupal and Joomla! stand nowhere in comparison.
User base and support
All three CMSs are well documented and have their own forums. However, when it comes to unofficial support, Joomla! and WordPress take the lead. Just search for “wordpress tips” on Google, and you’ll come across numerous blogs and websites dedicated to sharing their expertise on WP, and the same applies to Joomla! Sadly, Drupal doesn’t really have much unofficial support beyond the main documentation.
Speaking of the user base, all three CMSs have a loyal following, though WordPress does not have the same level of activity on its forums as the other two CMSs.
WordPress is by far the most user friendly and popular CMS of the three. It can be used to run things way beyond blogs, and its popularity ensures that it has a monumental pile of plugins and themes (both good and bad) to its credit.
Drupal and Joomla!, on the other hand, are also in active development and have a dedicated developer community, but do not beat WP in terms of usability.
So, who wins?
If you are designing a website for a not-so-technical client, or are looking for a simple solution to create a website, WP should be your preferred choice. Using Drupal or Joomla! for a simple blog will be overkill. If security is a concern, Drupal or even Joomla! would be preferred. Along similar lines, if your website is of gigantic proportions (say, over 15,000 pages), Drupal can easily offer the robustness that you need.
On a personal note, I use WordPress for most of my websites, and Drupal and Joomla! for some others. While WP gets the task done easily and gives me the time to do better things, Joomla! doesn’t. Drupal, on the other hand, has not given me any error message yet (and I do not suppose it will, any time soon). For my WP websites, I can pick any theme as and when I feel like; for Drupal, my best source is drupalizing, and for Joomla!, coding the template myself will be better than searching for a worthy theme.