In a CMS discussion group I belong to, someone recently asked:
Is there someone with experience with Drupal, Joomla/Mambo and WordPress who can tell what the differences are? What are the strong and weak points?
For better or worse, I am that person. So here's my summary of the advantages and disadvantages of each of the above CMS platforms.
- Very clean core code.
- Good project leadership from Acquia.
- Some very good developers available for hire.
- Fewer clowns available for hire (you can either code Drupal or you can't, it's harder to fake it).
- Can be made very server efficient in the right hands (scaleable).
- Less ready made drop-in plugins. You're going to have to get your hands dirty almost every time.
- More imposing default user interface.
- Fewer developers.
- More expensive developers.
- Good menu system.
- Strong static page structure (cf. weblog).
- Built-in membership/community features.
- Long time on the market.
- I'm searching here.
- Built-in performance pretty sluggish/clunky.
- Horrid built-in URLs.
- Weak weblog section.
- Hard to theme. A Mambo/Joomla site looks like Mambo/Joomla, like it or not.
- Crappy built-in SEO. Leading SEO plugin belongs to a very peculiar developer and is encrypted (have fun repairing the SEO plugin, we reverse engineered and decrypted it for our site to make our changes even after paying for it).
- Nasty, nasty core code. Very difficult to fix broken items.
- Fractured community (never healed after Joomla/Mambo split back in 2006).
- Most good plugins are pay.
- Rather mediocre developers. Anyone who likes to code in Joomla/Mambo in 2011 ought to see a psychiatrist.
- Developer pricing is all over the map as there are many old-school Mambo/Joomla developers still ought there churning out convoluted future-resistant code quite affordably.
- Huge community.
- Easy to optimise for performance thanks to Donncha O Caoimh and Frederick Townes. Great work guys.
- Easy to theme in a unique way. A WordPress site does not have to look like a WordPress site.
- Great plugin architecture.
- Plugins for everything.
- Lots of great professional developers.
- Fast development cycle. Improvements every year.
- Active leadership from Automattic and founding team. Particular thanks to Mark Jaquith for keeping the community running with less nepotism and more fairness than most collective human endeavour.
- Fairly weak core code (in comparison to Drupal, but not Joomla!) but core getting better every year.
- Lots of really crap faker developers in the pool who couldn't build a working website to save their mother's life.
- Lots of popular but seriously broken plugins which will cripple your website performance forever and make it nearly impossible for you to cleanly upgrade (NextGen Gallery, I'm looking at you but not just you).
- Really crappy commercial themes which are heavily marketed but compromise your ability to either upgrade or switch themes and compromise performance for the life of your site.
- Weak static page management without adding plugins. Easily fixed with said plugins.
- Too fast an upgrade cycle. You have to keep upgrading your site, whether you like it or not, for security reasons. There are no security releases only new versions. Feel the pain for a commercial site with running a full complement of plugins. Corollary: choose your plugins and plugin developers very, very carefully for cleanliness of code and frequency of update.
For a very large commercial project, I can see a justification for choosing Drupal. On a big project, most of your expense will be custom development anyway - everything has to be optimised and integrated - so you don't much care one way or another about a myriad of plugins which you will probably not use. I still wouldn't make that trade-off: slightly better core code for a vast pool of community contributed code. But it's a defensible position.
Joomla/Mambo should die a violent death. We did our first CMS project in Mambo and last year redeveloped a couple of existing sites in Joomla. Our best developers - very platform agnostic - threatened to quit if I accepted anymore Joomla work. Such crappy, convoluted spaghetti code they'd never seen. And these developers have had ample chance to see the worst side of WordPress.
The only justification for a site in Joomla/Mambo is that it's legacy (i.e. you already did a lot of custom development on it six years ago and don't have the budget to migrate) or that you are part of an international network standardised on Joomla/Mambo and the mothership discourages anyone from leaving the central platform (our client's situation). For everyone else, just migrate out and count your blessing that you got your site out alive. Enjoy the fresh air and clean code of WordPress (or Drupal).
WordPress is the platform of choice in my opinion for the small, medium or large business. Whatever holes you can find in WordPress (editorial management process, page management, ecommerce, membership site) are easily solved with high quality plugins.
The cool part about WordPress is that the core is kept clean so that you aren't forced to load code you don't need if you want a simple weblog. Thus WordPress can be a weblog, a corporate information site, a membership site, a store or an international news network.
We regularly develop advanced real estate sites in WordPress, maintain a very sophisticated insurance site, have developed elaborate furniture rental systems and develop the most delicious cooking sites as well as gorgeous online literary reviews. Not to mention political, news and law sites. All in WordPress.
The danger with WordPress include the overhyped commercial themes which don't solve your problems but pretend to (I'm looking at you DIYthemes.com and Thesis, WooThemes and ElegantThemes). A related danger are the weak developers and hangers on who have infested the huge WordPress community and enthusiastically give bad advice, whether about SEO or gallery plugins. These clowns will happily break your website for pay or into a defective by design commercial theme. Forewarned is forearmed.
Just like any other serious professional endeavour you need steady hands on deck when you want to take your site to the next level if you want to maintain performance, appearance and compatibility. Once you have substantial traffic or need ecommerce, WordPress is no longer a DIY venture for the non-programmer.
We personally recommend people start a new site on WordPress.com unless they are developing for an established business. Once you have an audience or a functioning business, self-hosted WordPress is the way to go. Even the sky is not a limit. There are few sites we could not develop better and faster in WordPress.
Serbo-Croatian: Drupal protiv Joomla protiv WordPress: Programersko gledište