Over the years I have read many blogs and comment threads where participants would sing the virtues of Wordpress over Joomla or Drupal and vise versa. I almost got caught up in the fray and even considered writing my own blog post. But then I realized that the competition between CMSs didn't matter. It really was an apples to oranges competition. That's why I decided to write this four-part series. I hope to highlight the fact that you can't make orange pie (don't try this at home), but you can make apple juice. Also, you can make orange juice and apple pie. But, did you know that you can use oranges as a marinade?
I have officially digressed and probably hurt my SEO. *Sigh*
Wordpress, Joomla, Drupal: A comparison (of sorts)
If you have not read my earlier posts on this topic, please do.
One of the most important things you can do after deciding to build a website is to plan out the website. Whether you need to mind-map it or outline it in Word, or write it on some paper, you need to have a plan for your website. That plan is going to dictate your design and your content. Furthermore, it'll suggest the CMS that is best suited for your goals.
A lot of time I find people working backwards when building a website. For example: "I need to build a website and it MUST be Wordpress. Can you do that for me?" Normally, I just say "Sure, no problem!" But, it's better to approach that client with a question: "Are you building a blog?"
Wordpress, the blogging machine
Wordpress is really made for building a simple website, especially a website that has static pages with content that doesn't change. I like to say that Wordpress is a blog plus. It allows you to get up and running in no time with no knowledge of HTML. You can create an unlimited amount of pages, add videos, podcasts, photo galleries, banner ads, social networking, etc. The list goes on.
Here's an example of a perfect fit for Wordpress. Let's say you have an auto repair business and want to build a site that tells visitors about your company. You'd also like to have some social networking and maybe a contact form for auto repair questions. Wordpress is a good choice. You can do all of these tasks quickly and easily with Wordpress. But let's say that you want to build an online learning/training website for a school. I'd suggest using another platform.
Here's why. First of all, you need extensive back office administration for instructors and school administrators. You'll need to restrict access to creating, modifying and deleting class content so that one the English teacher can't correct the math teacher's grammar or any other information. On the front end, students should not be able to see what other students are doing. Wordpress just doesn't have the permissions structure to handle this. In this scenario, I'd suggest Joomla or Drupal.
Joomla, the jack of all trades
Joomla had a very different beginning than Wordpress. Joomla was actually a spin-off from a platform called Mambo, which was not a blogging platform. The goal of Mambo was to create a free, Open Source, user-friendly platform that helps people build websites. Joomla was created by folks who left the Mambo project.
Although Joomla may be a jack of all trades CMS, it is not the best option for all needs. A perfect example is in the case of an eCommerce project. There already exist quite a few robust options for an eCommerce website, a.k.a. shopping cart. Magento, Prestashop, CS-cart, Shopify and Big Commerce are some of the popular shopping carts that crowd the field of eCommerce. At this stage, Joomla doesn't have a solution that can truly match up with these leaders of the industry. When I say this, I am referring to the back office features (i.e. shipping, returns, payment gateway support, customer service).
If you already have a Joomla site, keep it and just create an online store using another platform. Although Joomla is designed so that you can stick (or integrate) a shopping cart platform inside of Joomla, may not be cost effective to do so. There's a lot of programming needed to make that a reality and that is costly. Interestingly enough, this type of integration has been done with OpenCart. If you're a Joomla lover who has a small budget, this may be an option for you. Keep in mind that Prestashop is free and is more robust than OpenCart.
In most cases, Joomla provides many solutions for complex websites. These include, but are not limited to, social/community websites, online learning websites, forums, and directories. Joomla, the jack of all trades is not necessarily the answer all questions.
Drupal, the enterpriser?
Drupal is pretty comparable to Joomla in that it has robust built-in features, such as permissions and a site offline status. In most cases you can flip a coin in choosing between Drupal and Joomla. The difference is that Drupal appears to be focused on the enterprise level website. For example whitehouse.gov is a Drupal site. This lets us all know that Drupal can handle something as convoluted as a government website. By default Drupal is scalable, meaning it's designed to handle large, complex websites quite efficiently. Joomla can do this as well, but isn't designed for it.
Running a Drupal website is all about creating systems. Once these systems are set, you can quickly and easily manage your Drupal website. You can also create new systems for new purposes. If you're building a small website with a couple of moving parts, Drupal can easily manage your website, but may be overkill. It's not designed for the blogger or a small business owner who wants to make a couple updates from time to time. It's designed for a business that has a significant budget dedicated to website development. Website development should not to be confused with social media, design or content creation. Programming, security, and administration fall under the website development umbrella.
By the way, I haven't seen an online learning distribution for Drupal. There is an eCommerce solution for Drupal, but nothing comparable to Magento or Prestashop.
No CMS is really better than the other. What we have are different platforms designed to solve different problems. If I may use some metaphor, I'd say that: Wordpress is an apple, Joomla is an orange, and Drupal is a pineapple. Wordpress requires less work (or knowledge) to create website. Joomla requires more knowledge, yet it's not that hard to learn. Drupal requires that you invest more time and effort to see the fruits of your labor.
Choosing the right CMS shouldn't be an emotional decision. It shouldn't be based on what someone else had to say about it. You should do your due diligence and make an informed decision based on your website needs.
Drupal is a great CMS that can do just about anything you'd want it to do. This CMS can be used to build a website that has blogs, forums, eCommerce, an online community, etc. all on the same website. You name it. Drupal can do it. But, is it the best CMS for your website needs?
Drupal is best suited for an organization that's a bit larger than a mom and pop store, who would typically have complex website development needs. In the previous blog posts on Wordpress and Joomla, I detailed some of the administrative features of Wordpress and Joomla. This post will not get into those details because we'll easily get lost in the weeds. Drupal is complex so I've decided to focus on the general aspects of Drupal.
Out of the box, the Drupal core comes with tight security to protect your website and its contents. From time to time, new security updates are released to patch up newly discovered security vulnerabilities. Like the other CMSs, Drupal offers a one-click update feature. Drupal also provides security for your content that limits what users can see and do on your website. This includes the front end, what visitors see when they visit your site, and the back end or back-office which is not visible to the public. Your administrator will be responsible for giving users permission to access and or modify different content.
For example, your administrator can give your bloggers permission to add a new blog post, but not change the content of the "About us" page. I must emphasize that your administrator can control everything that anyone can do on the front end or back end of your website, even you the website owner. With all this security, does this mean that a Drupal website cannot be hacked? No. Any website can be hacked. Ask the federal government. It's the job of your administrator and developer(s) to follow Drupal best practices to shore up security. If your site is hacked, your administrator should be able to bring your website back to normal from a backup of your website. This is true for all CMSs.
Drupal permissions are similar to Access Control Lists found in Joomla. This high level of security is so powerful that you can change what each user can literally see on the website. Wordpress does not offer this extensive level of security.
One of the unique features of Drupal is known as Drupal distributions. Distributions are prepackaged solutions made for different types of websites. For example, if you plan to build a site for a city or municipality you should take advantage of Drupal's OpenPublic distribution. If you have a church, use the OpenChurch distribution. These distributions were made to help save time and money in setting up a Drupal website. Distributions are prepackaged with all the features, plugins and modules that you'll need. And, your administrator can add more features to these distributions if the need arises. Your administrator will be tasked with finding the right distribution and modules for your website.
Is Drupal Right For You?
I just want to reiterate that Drupal is not made for the beginner, do-it-yourselfer or the "mom and pop" website owner. Drupal has a significant learning curve. You'll need an administrator or webmaster who knows Drupal and can set up your website based on your needs. A qualified administrator should also know HTML and CSS pretty well, MYSQL databases, and understand some PHP. A reliable and knowledgeable administrator is crucial to running your Drupal site, because Drupal isn't very intuitive to use. Looking at the Drupal back end is like looking at a plane's cockpit. There are buttons, knobs, and panels all over the place that do something important. In Drupal some of them are hidden.
The cost of having a Drupal site can be significant for a small business owner because it's a big job. A small business owner just doesn't have the time to learn Drupal and run the business at the same time. For this main reason, I would discourage a one-person or five-person operation from choosing Drupal.
In the previous blog posts I focused on individual CMSs, but In part 4 I plan to wrap up this series doing more of a side-by-side comparison with recommendations for different scenarios. I hope you found this blog post helpful.