Like Love Haha Wow Sad Angry
Update on March 18th: new extensions for Joomla has been added.

3 days ago, while in conversation with a large group of prominent WordPress users, I asked “What is the most powerful CMS plugin for WP on the market right now?”. Within hours, I got a lot of backlash from the community reassuring me that WordPress is already a CMS. To me, WordPress is very advanced & powerful blogging platform, but not quite a full fledged CMS, yet. However, WordPress codebase is built so that you can code any CMS features you want.  It explains perfectly why WordPress has 29,873 plugins (at the time of writing), comparing to 7730 extensions of Joomla, and 14,764 modules of Drupal.

But wait…

….amongst those 29,873 WordPress plugins, compared to Joomla, the number of advanced plugins like Kunena, Mosets Tree, K2, VirtueMart, Community Builder, JomSocial, EasySocial, SobiPro, EasyDiscuss are not to the figure that I was expecting, If I can categorize 50 Joomla extensions to an “Advanced” group, I would expect at least 200 (4x more) WordPress plugins of the same group. With the integration of advanced extensions, I have seen people use Joomla as an intranet, a social network, an inventory management, a governmental information portal and much more. So my question was trying to find such “unserved opportunities” that would benefit the WordPress Ecosystem.

I can understand how “provocative” WordPress folks may feel about the question in the group. However, I am one of a lucky few people who have the opportunity to work with the most 3 popular CMS in the world for the last 10 years. After meeting briefly with my Joomla, Drupal, WordPress teams, I decided now might be a good time to summarize how these 3 popular CMS systems are meeting common, everyday needs.

With a lot of thought, I’ve come up with 12 attributes I consider “Musts” in order to be classified as a true “CMS”.  If you can think of others, please share them with me in the comment so I can add them to this post.

1. In a CMS, I need a Content Construction Kit.

Have you heard about Content Construction Ket (or CCK) in Joomla and Drupal? A CCK will help you manage multiple types of content in your CMS, e.g. the content of a video page is different from a photo essay.

With Drupal 7, apart from the core strengths like Content Types and FieldsNodesTaxonomy and so on, users can also choose other modules like ViewsCtoolsWysiwyg to customize the display of their content.

In Joomla, you can consider using some advanced content modelling systems which have been developed to extend the native content manager of Joomla. This is the full list of CCKs for Joomla. Or you can check out these famous names that we picked for you:

Out of the box, WordPress doesn’t have any of the above functionality but we can create our own CCK with the combination of custom post types, custom taxonomies and custom fields. If you are a developer and want to code your own custom post type, read this great post before getting started.

Plugin Pods might be a handy tool to set custom post type, taxonomy, custom field and so on. And if you have time, this comparison chart will give you a complete overview of custom post type.

2. In a CMS, I need custom premade layouts, page options such as a product showcase, team page or pricing table.

This feature allows users add custom pages to display special content, for example: portfolio view can display multiple products; contact page will automatically add map section, without manually adding short code into content.

In Drupal, the combination of the famous Views module and Block visibility will give users multi-layout and featured pages. With Views, you can create multiple pages, blocks with various display types without knowledge of coding i.e. Custom Frontpage, Slideshow block, jCarousel block, Latest Comments and Custom Taxonomy Pag

By default, Joomla has multiple Views that help users create landing page, detail pages with diverse layout and styles. It’s easy to override those views, styles, structure of layout; or add more Views.

So Drupal has” Nodes” and Joomla has “Views”, what about WordPress?

Fortunately, WordPress is fully capable to do this with its powerful Page Template feature. Or if you want to create your own content structure style, Siteorigin Panels Page Builder,  Aqua Page Builder or Visual Composer will take your idea into reality at no cost.

Page option, premade layout are the key things of web design. And the amazing thing for WordPress, Joomla and Drupal is the active development of theme/template Frameworks from 3rd party developers. I believe the number of templates/themes developed so far is greater than total of all WordPress+Joomla+Drupal plugins available. I myself have spent so much time on template Development that I should stop talking about it or I can never finish this post.

3. In a CMS, I need a good setup of User Management, Roles and Permission.

Roles and Capabilities are built-in features of WordPress. With these features, admin will define the Role and a set of tasks called Capabilities. WordPress has six pre-defined roles:

 - Super Admin
- Administrator
- Editor
- Author
- Contributor
- Subscribed

As a site owner you can manage Subscribers’ access to blog resources, view and comment, but cannot publish content; Contributor can write, publish, and edit published content. You can read more at Roles and Capabilities.

If you are not satisfied with the predefined Roles and Capabilities of WordPress, you can fully customize them using Advance Access Manager. Moreover, creating a brand new role can be done with User Role Editor.

In Joomla, we have Users management, Groups management and Permission management. Each group is assigned with one or more permissions. Each user can be members of multiple groups, so that they can have various permissions in the system.

Default user group tree in Joomla

  • Guest
  • Manager
    • Administrator
  • Registered
    • Author
      • Editor
        • Publisher
  • Super User

Default access levels in Joomla

 - Guest
- Public
- Registered
- Special
- Super User

Drupal 7 manages users with Roles. Each Role will have multiple permissions according to the settings of admin. List below are the default roles of Drupal core:

 - Anonymous User
- Authenticated User
- Administrator

Administrators can add more roles with different permissions as desired.

4. In a CMS, I normally have to provide customer support and community management.

The interaction between readers and the site owners are indispensable in CMS platforms.

A. Forum & Social Network

a. Joomla

b. Drupal

c. WordPress

Major sites tend to utilise separate forum source code and then integrate it into WordPress via a bridge or similar. The favorite choice is PHPBB.

B. HelpDesk

Helpdesk is not only for customer support but also serves as a forum, communication portal

a. Joomla

b. Drupal

c. WordPress

You can consider choosing a professional helpdesk services like ZenDesk or FreshDesk, these tools come at reasonable price and are easy to integrate into any platform.

C. Form & Survey

It’s very easy to find contact and customer survey application or forms packages for any of these three CMS

a. Joomla

b. Drupal

c/ WordPress

Contact Form 7 is the most popular plugins of WordPress, but it is the less advanced form plugins ever. That is an awesomeness of WordPress, the community & plugins development is driven by the users, by the simple usages, not the number of code lines.

5. In a CMS, I need a multi-languages website

Corporations needs to talk multi-languages, so do their websites.

a. Joomla

With Joomla (from version 1.6 up), you can easily set up a multilingual site without third party extensions. The function was born in Joomla 1.6, and became more friendly and easier to use in Joomla 2.5. Starting from Joomla 3.x, it is integrated into the installation steps when setting up a Joomla site.

b. Drupal

c. WordPress

6. In a CMS, I may also need a shopping cart – ecommerce solution.

Magento and OpenCart are special CMS for e-commerce. But sometimes, all you need is a small customizable portion of e-commerce integrated into your existing system. WordPress has some popular e-commerce plugins that are well worth taking a look at.

Joomla is not dedicated to e-commerce, but transforming a Joomla site to an e-commerce platform is easy  with many popular e-commerce extensions, here are but a few:

There are various solutions to e-commercialize a Drupal page. These two extensions are among the most popular ones with their own supporting communities.

7. In a CMS, I need a white label customize solution

A branded system is what templates and sites developer need. With help of these dedicated plugins, they will easily change the WordPress branding system into what customers desire, like changing the login UI, customize the dashboard and much more besides,

  1. White label CMS
  2. Branded Login Screen
  3. WP Symposium Toolbar
  4. WP Branding

8. In a CMS, I need post relationship solutions

This may be a drawback of WordPress comparing with other CMS. Post relationship is a flexible solution in content management, especially in dealing with large content source like online press. It links different articles together.

WordPress doesn’t have an official solution for post relationship management. There’s always room for improvement with your own experience in content management. Please refer to these post relationship plugins:

  1. Posts 2 Posts
  2. CPT-onomies
  3. Relations Post Type
  4. EG Series
  5. Organize Series
  6. Series
  7. Simple Post Series with SEO

In post relationship, Joomla has many solutions, from Tag add ons to other modules like:

These modules allow you to display related articles in a category, with tag, meta keywords and so on. If you have a huge number of articles, you can just archive the old ones, the module “Archived articles” allows readers to re-visit them.

Drupal 7 core manages content with taxonomy but it’s very limited to display post relationship in a same article. However, you can extend this feature by combining contributed modules Similar by Terms and Views.

9. In a CMS, I need multimedia content management.

By default, WordPress Media Library manages your digital content (pictures, video, sound, files). Its disadvantage is that Media Library only manages separate files, and it doesn’t handle those digital assets professionally. So, If you need a media management solution, please refer to the below list:

In Joomla, there are also various drawbacks in managing and displaying multimedia files. Joomla core only manages images and links, others are not supported. Managing files and folders are acceptable.

But that’s not an obstacle for Joomla users, because there are many strong extensions to help them manage their multimedia library and digital content:

Drupal 7 finds the same difficulty in managing and supporting multimedia assets. In each content type, admin can add Image field for writer to place images, but Drupal doesn’t gather all the files in one place, and it’s hard to reuse those uploaded assets. To enhance the capacity of Drupal in managing digital assets, consider installing these modules:

  • IMCE: IMCE is an image/file uploader and browser that supports personal directories and quota.
  • Media: extensible framework for managing files and multimedia assets

10. In a CMS, I need a total SEO – SEF solution.

SEO is now the standard of web development. WordPress is SEO friendly, as long as you follow these principles:

A. Make URL SEO Friendly

WordPress, by default, generates dynamic link like, and this is considered not SEO friendly. Everyone should know how to rewrite the link and make it friendly through Settings -> Permanent link.

Things are easier in Joomla. Just come to System >> Global Configuration >> SEO settings and enable the option ‘Search Engine Friendly URLs

In Drupal, you can turn on Clean URLs option by entering Configuration >> Search and Metadata.

B. Use a SEO Friendly theme

Choosing a SEO friendly theme is very important, it affects directly the data crawling process of search engine.

You can develop a SEO friendly theme using the best frameworks out there like Hybrid Framework, Roots, Genesis Framework, Thesis Framework, Canva Framework.

C. Use plugin for SEO

WordPress toolbox contains multiple SEO plugins. you can fully customize title, description, rich snippets –, generate sitemap and optimize keyword

You can use SEO features from the Joomla core like alias, meta keyword, meta description, robot URL rewriting, Add suffixes to URL and so on. Also, please refer to these extensions when it comes to SEO in Joomla:

These modules will take your SEO efforts in Drupal to a new level:

11. In a CMS, I need a multi-author workflow solution.

A CMS combines the work of multiple authors, and helps them working together flawlessly without any drawbacks.

WordPress is quite competent with its Roles and Capabilities feature. You can add one of these plugins to manage a multi-author workflow:

Not as powerful as WordPress, but Joomla 2.5+ and 3 are already providing a superb solution for multi-author workflow. Versioning since Joomla 3,2 allows various authors working on a same article, and it records every change on those articles. With Versioning, you can estimate the contribution of each author, and content management is trouble free with backup and restore.

Meanwhile, Drupal 7 comes with a basic revisioning solution. Multiple contributors can work on the a same document, comment and review every little thing they edited.

And if you’re not satisfied with the basic solution, dive into these modules for a better experience:

12. In a CMS, I need a Social Media connection solution

Now is the time of Social Media: Facebook, Twitter, Linkedin are channels that no one can overlook.

You can cleverly leverage the power of social media by incorporating them into your CMS with these plugins:

To socialize Joomla content, you can use a service like AddThis, ShareThis or install these third party plugins:

In addition to get more traffic from social channels, you can also auto-import content from social networks and display them beautifully on your site with JA Social Feed.

Drupal has gone social with these solutions, what’s your pick?!


Each CMS has its strengths and weaknesses and has its own eco-system with supported plugins and extensions. I am more on the Development side of WordPress, Joomla, Drupal and don’t have many chance to be a real user. I believe the list here is far from complete, please correct me if I miss any.

So to all the WordPress geeks, join the discussion in comment and help me fulfill the list. I may try to bring some Drupal nerds from and Joomla Guru from to take a look here as well.

Like Love Haha Wow Sad Angry


Toolset from WP-Types?
I think that open source is great, but for any business sites, I prefer paid plugins, because the likelihood that the plugins, will be supported, and developed.

It seems like a thorough comparison! I have to admit it’s been a few years since I worked with either Drupal or Joomla but there was a time that I tested all three of them too (and even more) and decided to proceed with WP. And never looked back! 🙂

Nice article and overview (for sure not complete). Good read for newbies and users of one particular system, who dare to think outside their box. Fortunately, not another article from the usual ignorance “who is the better CMS… blah blah”. Thanks for that!

Great article, and non-biased. I use both WP and Joomla, and Joomla wins hands down, for me. WP is great for setting up simple, blog style sites quickly, but for ease of additional, more heavy duty CMS capabilities, Joomla ticks all the boxes. For me.

My thoughts are similar. After exploring CMSs several years back, I chose Joomla for my sites. In the last two years, I’ve used WP as a CMS as well. For casual blogs, WP is fine. For professional sites—simple and complex—my experience is that Joomla is the superior tool on all counts. Another observation is that WP might be selected to accommodate a site owner who is not very technical, however, a blinged-out WP UI can be very user-unfriendly.

Great comparison. Very helpful. IMO one very important thing you missed is Performance . W3 Total Cache and Yoast are the main reasons i use WordPress over Joomla! on most of my projects. If you know any comparable plugins that can do the same for Joomla! please let me know.

I’ve only used Drupal.
I found the documentation, for all modules, to suck. THey’re written by the developers themselves, who have no idea what it’s like to not know how their module works. So, they leave out the most basic, obvious things you need to know – because they’re obvious to the doc writer. Common in bad documentation. So I had to ask myself, should one author put in a few more hours to make it better, or should thousands of readers put in one more hour of effort to understand it?
I also found the software management to be a disaster. You make a change, some of it is in the database and some is in source that’s checked in. You can’t move the database changes to production, without actually replicating the changes, by hand, on the production server. Also on the qa or staging servers. Rollback? Go and figure out how to change it back by hand. There’s a module, stupidly named ‘Feature Module’ (try searching for it in a database where everything is a ‘module’ and they all have ‘features’), that’s supposed to fix it, but it was always complex and unpredictable and often unusable for a situation.