Joomla And WordPress: A Matter Of Mental Models

Advertisement

Open-source content management systems (CMS) are a large family of Web applications, but if we’re looking for stability, performance and average technical requirements, we’ll come up with a handful of options. In the past, choosing the “right” CMS was a matter of the project’s requirements, but now this is not completely valid because the paradigm of extensibility had driven the development of major CMS’ towards a model of core features that are extensible with plug-ins that fill virtually any requirement.

Picking the right CMS is then a matter of “mental models”: choosing the one that best fits our vision of how a Web application should work and what it should provide to users and administrators. In this article, we’ll explore the main difference in the mental models: of WordPress and Joomla for theming and extending their core.

Background Thoughts

Joomla and WordPress

WordPress and Joomla are two of the most popular open-source CMS’ around. They offer large and active developer communities and excellent documentation.

WordPress is the first choice among the designer community mostly because of its well-designed back end and wide availability of excellent themes.

Joomla, meanwhile, suffers from Mambo’s legacy, which was notorious for low performance and semantically incorrect output (such as nested tables for layout). But since the release of version 1.5, Joomla has a completely rewritten core, with improved extensibility and better HTML output.

One difference between WordPress and Joomla is their theming model. A website developer migrating from Joomla to WordPress might feel that the latter requires too much theme coding, while a developer moving the other way might feel that Joomla is less flexible and customizable. The reason for this is the different models on which the themes of these CMS’ are based.

WordPress’ Theming Model

WordPress Theme

WordPress’ theming model is based on a per-view structure. This means that in each theme, you could have individual view files for the post list, the single post and the archive pages. These files are independent of each other, allowing the developer to customize each view but requiring them to duplicate many parts of the code. The only common parts in a theme are the header and footer, which can be coded directly in the individual view anyway.

The main drawback of this model is that different views will not always require a different presentation (for example, the archive, category list and tag list are just lists). To overcome this problem, a theme is organized in a hierarchical structure, in which more generic views are used as fallbacks for specific ones. The common fallback for a WordPress theme is the index.php file, which is actually the only required file (along with a style sheet) in a theme. A complete reference and visual diagram of the hierarchical structure of a WordPress theme are available here1.

The Loop and Template Tags

To better understand how a WordPress theme works, we need to look more closely at the “loop” and template tags.

All data for a post or a list of posts is extracted through a loop. A loop is basically a while construct that begins with this declaration:

<?php if (have_posts()) : while (have_posts()) : the_post(); ?> 

// post output here 

<?php endif; endwhile; ?>

The most important part of this code is the_post(), which initializes a global $post PHP object containing all of the page data. The loop construct is also required for single post view, because all functions for presentation of data rely on the presence of the $post object. These functions are called template tags, and their main purpose is to output formatted data. Usually, they do not output HTML tags so that they can be used in different scenarios.

A complete guide to theme development is available here2.

Joomla’s Content-Based Model

Joomla Template Configuration File

Joomla has a completely different theming approach. Joomla’s templates are built on a common structure defined in an index.php file.

This file contains both static content (i.e. content that is common throughout the website) and template tags, which serve as content place-holders and are replaced by HTML output during the page-rendering phase.

A common form for a template tag is:

<jdoc:include type="modules" name="right" style="xhtml" />

Template tags differ in the type of content they provide: component, message, module, head.

This structural backbone implies that each view in the CMS outputs not a complete page but just what’s needed to present content. At first glance, a developer used to the theming model of WordPress might think that there’s no way to customize this content block. In fact, Joomla relies on the MVC architectural pattern3, meaning that data extraction and presentation are separated, the latter being rendered by the view part of the application.

Template Customization

To customize the default view, Joomla has a pattern called template override, through which the system scans the template folder for a custom view file to use in place of the default one. The image below shows the folder structure and naming convention of a default view and its override.

Joomla Template override
An example of the folder and file structure of a Joomla template override (from the “ja_purity” template).

Joomla overrides are an excellent way to customize a website template without hacks. Still, they are often overlooked, and Joomla’s support of legacy extensions make this pattern unusable, even for popular packages such as Virtuemart194 (which uses its built-in template system).

A complete reference for Joomla’s template system is available here5.

Beyond Core

Modular System
(Image by jared6)

In the last few years, plug-ins have made a big difference in the software industry, one of the most notable examples being Mozilla Firefox.

As we noted, modern CMS’ are developed to be extensible, allowing us to use the core as a backbone and build specialized parts on top of it. This resulting modular design is an effective development model for many reasons:

  • Better maintainability
    Developers don’t need to modify the core in order to add or customize functionality.
  • Lightweight and safer
    Only features that are needed are included, resulting in less memory consumption, a smaller code base and fewer vulnerabilities.
  • Separate development cycles for core and features
    By offering an extensions API, third-party developers can add new features while the core team focuses on the reliability and performance of the system.

With open-source projects, this last point is both a blessing and a curse. It benefits from shared development effort but leads to unverified work and a less organized workflow.

Joomla and WordPress have tried to overcome this curse by providing coding guidelines. Still, little effort is spent documenting the back-end and front-end UI design.

Aside from their different naming conventions, the extensions models of WordPress and Joomla differ in how third-party code interacts with the core by mean of the extensions API.

The key point to understand is that while Joomla is based on MVC pattern, WordPress relies on an event-like system to which extensions can be hooked. Let’s look at some details.

WordPress’ Hook Method

WordPress’ extensions model is based on the execution of a set of functions attached to the system flow by mean of “hooks.”

Hooks contain a list of functions that are triggered at various points as WordPress is running. They manipulate (in the case of filter hooks) and output (in the case of action hooks) database data and can be accessed from within the theme itself and from a specialized plug-in package.

WordPress lacks comprehensive documentation for hooks, but a list of hooks is available here7.

To understand the mental model behind WordPress’ hook system, we can compare it to the sequence of actions in baking a cake. In the beginning, we have an idea of what kind of cake we want to bake, so we get our ingredients. We cannot just throw everything together and bake it. So, we execute an ordered list of actions, such as “filtering” egg shells and mixing the eggs in with flour and sugar. As we’re doing that, we might want to customize the recipe. So, we “plug in” some chocolate and perhaps reduce the quantity of another ingredient by half. The result is a proper cake, created from discrete ingredients and a touch of creativity.

WordPress bakes its pages the same way.

Sidebars and Widgets

While plug-ins are broadly related to hooks, a widget is a special type of plug-in. It provides a means of showing information in a theme’s sidebar. The main advantage of widgets is that they are configurable in the back-end interface, allowing quick customization even for novice users.

WordPress Widgets Page
All available widgets are listed in an administration panel.

In terms of theme development, the sidebar is similar in its mental model to Joomla’s template tags. It is a placeholder for something. The misleading bit is that a sidebar doesn’t have to be placed in the actual sidebar of a layout. It could go in the footer, navigation, header or elsewhere.

To learn more about the new API for widget development, have a look at the official documentation8.

Adding Functionality

Until now, the problem with WordPress’ extension API was that it gave you no simple way to add complex functionality, such as e-commerce carts and event listings. Most developers excused this shortcoming by pointing out that WordPress is a blog engine. This will hopefully be resolved with the release of WordPress 3.0 and its system for “post types,” which makes it possible to use the “post” and “page” interfaces for different types of content.

As for other popular CMS’ (such as Drupal9), post types function as a kind of “Content Construction Kit,” giving you the ability to smartly add, manage and present specialized content. If you’re interested in trying this new feature, here is a good tutorial10.

Other than post types (and until major plug-ins update support for this feature), the only feasible way to add complex functionality is to use already existing pages as containers, placing in the body a place-holder (called a “shortcode11“) that is replaced with HTML output by specific filter hooks.

This approach is used by plug-ins such as Buddypress12 and WP e-Commerce13, which extend the blog engine with social network and shopping-cart capabilities.

Another great example of shortcode implementation is Contact Form 714, a fully featured contact-form management plug-in.

Extending Joomla

An often overlooked aspect of Joomla is that it is built on the solid MVC framework. So, extending its core is really much like working with products such as Zend Framework and CodeIgniter, which give you an already designed back-end interface upon which to integrate your own extensions. This approach also gives designers the ability to use template overrides, even for third-party extensions.

Joomla! MVC Diagram
A diagram depicting Joomla’s Model View Controller system flow.

To better understand MVC and how it works in Joomla, here is a complete reference15.

Joomla’s Extension Types

Joomla’s extension model comes in three flavors, each with different tasks: components, modules and plug-ins.

Components extend the core by adding specific functionality, such as e-commerce carts, event listings and forums. From the user’s point of view, we can think of components as discrete sections of a website, not connected to other content. A popular example is JEvents16, an events calendar.

In the theme system, a component’s output replaces the component placeholder in the template’s index.php file:

<jdoc:include type="component" />

Modules are like widgets in WordPress: they show a component’s information, which is extracted from the database. They are “attachable” to module positions and can be put on every page of a website.

Modules are primarily intended to be teaser blocks, but they can incorporate full text and image galleries, which makes them handy for static parts of a layout, such as footer notes. They are also useful for showing related content on a page. For example, you could highlight interesting products for Web developers as they’re browsing a list of barcamp events.

The template tag, which serves as module place-holder, looks like this:

<jdoc:include type="modules" name="right" style="xhtml" />

Plug-ins work similar to WordPress’ hook system, because they bind to specific system events to format, manipulate and replace HTML output. Possible fields of action range from content for articles (such as video embedding tools—AllVideos17 is a popular one) to HTML filtering and user-profile extension. Commonly used Joomla plug-ins include URL rewriting filters, which come bundled with administrative components such as Sh404SEF18.

Compatibility Issues

One thing every developer should be aware of is that, despite efforts to provide a great extension API, Joomla 1.5 still suffers in its support of legacy extensions (built for v1.0), which do not have an MVC structure and which are sometimes hardly customizable. Furthermore, they break the API mental model.

The Joomla extensions library has a clear mark for 1.0 or 1.5 native extensions. But faking 1.5 native compatibility is easy, which would leave developers with nothing but legacy code. This method is followed even by big well-known projects like Virtuemart194.

Hopefully, once Joomla 1.6 is released and legacy support is dropped, every developer will rework their code to fit the CMS’ specifications.

What’s Next

While the best way to choose a CMS is by trying it out on a real project, understanding its underlying mental model can make developers feel less lost in code and more aware of the design patterns they need to follow.

If you want to develop themes and extensions for Joomla and WordPress, here are some resources.

WordPress:

Joomla:

(al)

Footnotes

  1. 1 http://codex.wordpress.org/Template_Hierarchy#Visual_Overview
  2. 2 http://codex.wordpress.org/Theme_Development
  3. 3 http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller
  4. 4 http://virtuemart.net/
  5. 5 http://docs.joomla.org/Joomla!_1.5_Template_Tutorials_Project
  6. 6 http://www.flickr.com/photos/generated/501445202/
  7. 7 http://codex.wordpress.org/Plugin_API/Action_Reference
  8. 8 http://codex.wordpress.org/Widgets_API
  9. 9 http://drupal.org/
  10. 10 http://kovshenin.com/archives/extending-custom-post-types-in-wordpress-3-0/
  11. 11 http://codex.wordpress.org/Shortcode_API
  12. 12 http://buddypress.org/
  13. 13 http://www.instinct.co.nz/e-commerce/
  14. 14 http://contactform7.com/
  15. 15 http://docs.joomla.org/Developing_a_Model-View-Controller_Component_-_Part_1#Introduction_to_Model-View-Controller
  16. 16 http://www.jevents.net/
  17. 17 http://www.joomlaworks.gr/content/view/16/42/
  18. 18 http://dev.anything-digital.com/sh404SEF/
  19. 19 http://virtuemart.net/
  20. 20 http://net.tutsplus.com/tutorials/wordpress/how-to-create-a-wordpress-theme-from-scratch/http://net.tutsplus.com/tutorials/wordpress/how-to-create-a-wordpress-theme-from-scratch/
  21. 21 http://www.devlounge.net/extras/how-to-write-a-wordpress-plugin
  22. 22 http://planetozh.com/blog/2009/09/top-10-most-common-coding-mistakes-in-wordpress-plugins/
  23. 23 http://wpshout.com/looking-forward-to-wordpress-3-0/
  24. 24 http://www.catswhocode.com/blog/8-useful-code-snippets-to-get-started-with-wordpress-3-0
  25. 25 http://www.smashingmagazine.com/2009/01/05/joomla-developers-toolbox/
  26. 26 http://docs.joomla.org/Tutorial:Creating_a_basic_Joomla!_template
  27. 27 http://docs.joomla.org/Developing_a_Model-View-Controller_Component_-_Part_1
  28. 28 http://docs.joomla.org/Tutorial:Creating_a_Hello_World_Module_for_Joomla_1.5
  29. 29 http://www.notwebdesign.com/joomla-component-creator/
  30. 30 http://community.joomla.org/blogs/community/1118-joomla-16-update-february-2010.html

↑ Back to topShare on Twitter

Marco Solazzi is an Italian frontend developer interested in UI design and web usability. He's an active developer and supporter of Open Source Projects like Joomla! and Wordpress. He runs a personal website about technical topics and electronic music. He also collaborates as JavaScript author with the italian website HTML.it.

Advertising

Note: Our rating-system has caused errors, so it's disabled at the moment. It will be back the moment the problem has been resolved. We're very sorry. Happy Holidays!

  1. 1

    Thx a lot…good job

  2. 2

    Go Typo3.

    • 3

      thats so 2001! you can built better, more flexible websites based on a cms system with other software too (not really joomla ;) ) you all should give typolight.org a try !

      • 4

        Agree with choise.

      • 5

        Also agree. If TYPOlight had better documentation (particularly for developers), and perhaps a more flashy backend UI to appeal to the looks-are-most-important crowd that WordPress and ExpressionEngine draw, it would take the community by storm.

        • 6

          Well, it’s not just about looks. Design can also equal usability. TypoLight’s UI is convoluted, which makes it harder to use.

      • 7

        I definitely agree with you guys.

    • 8

      Hi folks,

      I agree with Zmee. ;) First thanks for this article, I always welcome such articles to get an impulse to look beyond my own nose :)

      WordPress is good for publishing prototypes or simple sites. From the view of a developer it’s a little bit “messy”. It’s 2010 guys, c’mon drop “$global”! But they’re on a good way, can see a lot of classes in trunk: http://core.svn.wordpress.org/trunk/wp-includes/. Templating is very easy, even with very basic PHP knowledge. That simply makes the system very attractive for beginners but also pros because of the fast deployment cyclus.

      Nevertheless, I prefer TYPO3. It has a very lively community at a great set of extensions. Unfortunatly some built-in social-, community- and multimedia features are missing but can be installed very easily. In current the version the integration of remote multimedia content (YouTube, SlideShare, MP3 player) was simplified and there’s also a good social media extension on its way. For more information check out http://forge.typo3.org/projects/show/extension-social_media_widgets . For special requirements it’s worth to take a deeeep look at the TSRef. TypoScript is very mighty if it comes to face even complex tasks easily.

      • 9

        Marco Solazzi

        May 3, 2010 3:46 pm

        Hi, I’ve worked on TYPO3 back in 2007 so can’t say much about current releases. Anyway i’ve always liked its lively community but i must admit that typoscript learning curve may be too high for some developers and required resources to run a large website won’t compare to lighter and still powerfull CMSs.

      • 10

        Typo3 is for sure THE most powerful CMS out there and with all the flexibility it provides a pro-developer can scale it infinitely.
        But I must point out the part where I say: Pro-Developer.
        Typo3 is not for the average “you and me” person. It requires a lot of development work to get your site started. And without TypoScript you barely get past a basic static beginner web site.
        How ever, if one puts the effort in and learns to master Typo3 and most important TypoScript for that matter a professional Web Designer will absolutely be able to offer even largest corporate web projects of global proportions.
        For smaller projects how ever, it’s shooting on Birds with cannons.

    • 11

      I Agree! TYPO3 is the most powerful and flexible CMS, but you need skills to work with it.

  3. 12

    Nick Ballinger

    May 3, 2010 6:09 am

    Just FYI… WordPress 3.0 (scheduled to go final in May 2010) uses a new method to to display the primary loop that virtually eliminates any duplicated code. Since this was listed as a primary drawback for this platform, I felt it was important to note.

  4. 13

    Great job w/ the description of the two

  5. 14

    I actually did develop a site in WordPress after building many in Joomla. I found it to be just as you wrote in the article -a somewhat difficult paradigm to understand after working with the MVC model.

    Still, I could see why most of the design community really loves WordPress. I just don’t prefer it myself. However, there are many, many flaws in Joomla which frankly I don’t see being addressed in the 1.6 alphas that I’ve seen.

    Hopefully they can pull it together, because it looks like WP 3.0 is going to be head & shoulders better than 2.X.

  6. 15

    I’ve just started developing sites in WordPress. I’m used to Moveable Type and Typepad and I find WP’s way of configuring a site a bit confusing. It would be useful to read a similar article comparing WP to SixApart’s CMSs.

  7. 17

    I think a lot of it is preference, I prefer WordPress by miles to Joomla so I don’t even tend to think about it if I can get the project to work on WordPress

  8. 18

    A good introductory article. I would have liked to see a reference to the recently created template frameworks for Joomla! that help to create templates in an easier and more customizable (from the backend) way. Frameworks such as Warp5 by YooTheme, T3 by JoomlaArt or the powerful Gantry by Rocket Theme can be a good start for template designers.

  9. 19

    Great post/article (!)

    I just don’t agree when you mention “legacy extensions” for Joomla as a weak point.
    Hardly anyone uses that ” legacy ” extensions anymore.
    It’s hard to find an extension that is not MVC today. And like you mentioned, 1.6 is coming soon.

    Now, Virtuemart is THE big exception but it’s already being re-written to the MVC model and new alternatives keep coming.

    And WordPress has easily the nicest CMS backend UI :)

    Not long ago I gave a presentation on this that is worth checking out, in case someone is interested:
    “How to choose between Joomla, WordPress and Drupal – Is there a best choice?” http://www.slideshare.net/Webnific/cms-comparisson-3850088

    Cheers!

    • 20

      Nice presentation Marco!

    • 21

      i really liked that picture of Dr.House btw
      but your conclusion about drupal is just it

    • 22

      I would most certainly say that there is no need for Joomla 1.0.x legacy support, I haven’t used any of the components/modules/plug-ins for it for almost a year now, and if I was it was forced by my company.

      The article seems a little biased towards WordPress but it’s not often you read about Joomla in websites as popular as Smashing Magazine.

      Overall a good viewpoint of both CMS’s, thanks Marco.

  10. 23

    Kind of disappointed you didn’t bring Drupal into this. In my opinion it has a much more solid core and has many more options for extensibility.

    • 24

      dominic heron

      May 3, 2010 7:00 am

      They’re just self-consciously following the masses. WordPress and joomla in particular are both inferior to drupal in innumerable ways, but the herd always prefers the simpler, shallower choice – and Smashingmag has its advertising numbers to think about. The unfortunate truth is drupal is less of a draw for this sort of front-end heavy readership. It doesn’t worry me – drupal is supreme and there’s serious money in it because of the scarcity of developers.

      • 25

        that`s totally true

        also when i develop a site
        i am really sure about drupal integrity and flexibility
        so in the future when a feature is wanted i`m most of the time 99 % sure that it will get realized

      • 26

        And this is why I hear almost no one who developes on Drupal or runs it on their site.

        Arrogance.

        I have never met a more angry or rude group of developers than those who work with Drupal.

        You embodied that just now…

      • 27

        I taught OOP commercially to training clients back in the earlier 90’s and I’ve programmed in over 5 languages before PHP including custom ASP+VBScript+SQL Server apps from 1995 until 2005. Back in 2006 I chose Drupal because of it’s elegant architecture and developed for it for over two years. Then I was asked to do a project on WordPress and since then have never looked back.

        While WordPress is less “elegant” than Joomla or Drupal it is far more robust when it comes to actually delivering solutions. The Drupal developer spends 9% of their time doing 85% of an app, then spends 10 times as long trying to get Drupal to get out of the way in order to complete the remaining 15% of the project. And Drupal is so nested that debugging it is a nightmare!

        Joomla on the other hand suffers from object model complexity and the fragile base class problem.

        After being an advocate and instructor for OOP in the 90’s I now realize that pure OOP often creates more problems then it solves. The lack of rigid class structures and the essentially event-driven model of WordPress create a perfect balance between structure and flexibility, design and extensibility.

        If you feel that Drupal or Joomla are more elegant than WordPress and that’s more important to you, knock yourself out. I’ll be over here busy getting instead projects done and getting them done quickly using WordPress.

        • 28

          Mike,

          It looks like we both come from the old school, the days of Borland vs Watcom. Ahh, the late 80’s and 90’s. ;)

          I’ve been a programmer for 22 years, about 12 of which is PHP. I typically custom build back end systems that integrate with Adobe Contribute, since Contribute is wonderful for end-users to manage their site.

          I’ve been looking at stock CMS systems (vs building my own with something like code igniter / modx looks good, but the documnetation is a little murky).

          I took a long hard look at Drupal, but it seems to be a nightmare to configure and probably overkill for my usual clients such as small businesses, npo’s etc.

          Yesterday, I jumped into Joomla, but after looking (for the 10^100 time) at other systems – and this article, WordPress looks interesting.

          I guess my 4 main priorities are :

          1. Ease of use for my client to manage their own site.
          2. Ease of building custom templates/themes
          3. Ease of coding plugin-s etc, using php.
          4. Ease of integration of technology like jQuery, embedding flash (such as a video section of a news site)

          Since this post, what are your feelings on the current releases of WP and Joomla! in these regards?

    • 29

      Marco Solazzi

      May 3, 2010 3:14 pm

      Hi James,
      yeah i’ve considered to also include Drupal in the article, but right now i’m not enough expert on it to go beyond the “how-to-code” surface.
      I’m planning, though, to write about it in the next future.

      • 30

        You should definitely give Drupal a go, it’s more than just a CMS. From my experience it’s the most flexible and powerful one out of all!

        • 31

          Agreed. Drupal is awesomely flexible and impressively stable.

          But it is hideously ugly. Please do a article on ‘Designing for Drupal’ so your audience can bang out some better templates.

  11. 32

    I’ve used both for years. I really like how I can login to WP and see which plugins need to be updated. Click a button and I am good to go. Maintaining my Joomla sites was always the tough part. I found myself always taking it down to update a MOD/plugin/COMponent. Even with the latest Joomla with the builtin installer, it isn’t as smooth as WordPress.

    One thing that articles need to look into is…
    1. How smooth/easy is it to update the core part of the CMS and its many third party extensions.
    2. When something is removed, how ‘clean is the install’. i.e. You can pretty much through away an app on the Mac away and know that your system is pretty clean. Whereas install an app on Windows, and you have 100s of little files everywhere. There are utilities for both to help remove 100% of left over files… alas…. Anyways, in the CMSs I have used, this always seems a week point. You install stuff over the years, remove it, update it… and over time, you’ll need to do a complete refresh as junk builds up… sometimes causing stuff to go bad.
    3. How efficient is the database schema. Some CMS I have used make their databases bloat so quickly. For example, add a custom field to a post and ALL posts have that custom field attached, where they use it or not. Your DB balloons!
    4. How ‘standards compliant’ is the ‘core output’ I don’t know if it is still an issue on Joomla, etc, but I recall that you could get a nice XHTML template but some of the html the CMS itself spits out was very 80s. You’ll go crazy trying to get it to be compliant.

    It would be good for Smashing to compare:
    Joomla, Drupal, WordPress AND Expression Engine.
    100s of CMS out there, but to me, these are the ones that now count. (Sorry to users of other CMSs.) It would be very excellent to choose a topic, for example, ‘A Real Estate site’ Have examples of how you would use all four to make such a site. In reading that, people would walk away with ‘Oh, that one is powerful… oh that one takes too many steps to do that… oh, that one would need some serious extra plugins, etc’

    • 33

      I would like to see such comparison made with Expression Engine or even better, MODx.

      Like another commenter said, it feels so 2001…

    • 34

      Marco Solazzi

      May 3, 2010 3:53 pm

      @Carlos: both Joomla and WordPress aren’t hard to update, for components and plugins (as for every 3rd party code) it really depends on their very own code (J! and WP has simple way to implements extension update though).
      Anyway this article wasn’t meant to deepen into technical topics, just to outline development mental models applied to two of the most popular CMs around.

  12. 35

    Jamal Nichols

    May 3, 2010 6:39 am

    People still use Joomla?

    • 36

      man, Joomla=powerful, flexible, lot of community component/module..so yes, Joomla still alive.

    • 37

      Joomla is VERY popular. You’re going to get your Drupal and Typo guys on here making claims that their system is the only one to use, but reality is use the best tool for the job.

    • 38

      People still use WordPress? ;-)

  13. 39

    The title of the post is the best for cms comparing.

    For me , the great advantage of wp is the user feedback from the blogging plattform and a lot of people know wordpress and know how to use it.
    customers that worked with drupal, joomla and other cms, are fall in love with wp. As developer, after study inside wordpress, it’s not difficult to change the templates, add sidebars, make my own plugins, widgets and shortcodes.

    For wp i recommend use of thematic theme (or other framework) and do child themes.

    i’ts my 2 cents.

  14. 40

    WordPress Rocks !

  15. 41

    @Jamal, with 600,000 downloads a month, I guess they do :P.

    Great write up about two great applications. The enforcement of MVC in joomla! 1.6 is going to mean a huge step forward for site developers. Virtuemart is in the middle of a major rewrite to bring it up to standards, and I know that many others are also. It’s a very exciting time.

  16. 42

    Expression Engine is not even Open Source.

    If you really want a strong comparison between Joomla, WordPress & Drupal,
    there isn’t anything better than the ‘CMS Showdown’ at the moment: http://cmsshowdown.com/

    (Though is from March 2009)

    • 43

      Is open source, developed with codeigniter. it’s not free.

      • 44

        Really? you got me there :)

        Expression Engine is VERY interesting because of CodeIgniter 2.0 but the price is a big turn off to me.

  17. 47

    Bournemouth Web Design

    May 3, 2010 6:56 am

    We use both Joomla and WordPress CMS depending on what the client requirements are. Obviously we have 2 sorts of developers/SME’s that are familiar with one of those CMS’s.

    I personally prefer to use WordPress and have struggled to “get my head round” Joomla but one day I will get there :-)

    A great article.

  18. 48

    WordPress is more easy to use but has limited uses. I know you can make wordpress do a lot of things but Joomla is a complete CMS (Modules & Stuff) but difficult for noobies (i felt this). WordPress is constantly evolving and the new 3.0 release will bring a lot of needed features making WP something better than a blogging platform :)

  19. 49

    Drupal.

  20. 50

    Good article, thx. I know Joomlas structure quite well but not WordPresss. This gave me a great introduction to the differences.

  21. 51

    I use both, and develop for both. In fact part of my job is converting themes across platforms, as well as extensions/plugins (including Drupal too).

    I prefer Joomla for templating, mostly because its easier to target aspects of the design or override the output by any aspect of the program. There are poorly coded (older) extensions that make this difficult or impossible, solution? Don’t use them. There are many options that conform to the proper MVC model. I don’t install legacy either.

    I think a major plus for Joomla is the fact you don’t need to know PHP to make a theme. You have to do some with WordPress to get the loop. Knowing PHP can give you lots of extra abilities, but isn’t required.

    Both WordPress and Joomla now have a slew of frameworks that muddy the waters here as well. They were not covered, and while they aren’t part of the default installs, most of them provide additional features which overcome common shortfalls.

    As a developer who uses both, you should use the one that fits your style and skills. The author says that choosing a CMS used to be deciding what features you need, and while these two examples have matured and are more flexible than ever, they still have very different features. I think the key is understanding the underlying architecture (of any system), and I’m glad the author focuses on this here.

  22. 52

    @Jamal – The joomla user group is ever increasing and with good reason.

    WP is great, and has the potential to do a lot for a wide variety of industries. I’ve seen WP do much more than out of the box blogging. That being said, it is important a developer know when to know to move on. WP and Joomla (IMO) are two different animals. While Joomla does require a longer (not by much) learning curve, it (out of the box) handles many more features and is much easier to deploy projects that are more than just blog/static content. Having two click installs of e-commerce, community website, etc. packages allows for rapid integration of a complete solution for the client.

    I have a friend who is big on WP and gave me good incite on its abilities. It literally can do everything Joomla can, but not without lots of modification and doesn’t come “out of the box” that way. I can’t take anything away from WP, because he’s made great things happen with it. The down side is that there isn’t much support for these hacks, which leaves the next developer searching for answers.

    To each their own I guess. If it gets the job done right and securely then we all win, I guess.

  23. 53

    Masaood Yunus

    May 3, 2010 7:11 am

    I developed a few websites in Joomla 1.5x, and recently moved a site to WordPress. I am surprised at how easy it was to setup WordPress as CMS. Infact, the backend is lot more clean and functional than Joomla. I trained a couple folks to do regular website maintenance, and they were able to pick WordPress in less than half the time than Joomla.

    Joomla is a great CMS but its just too complicated when compared to WordPress for simple websites.

    • 54

      John Crumpton

      May 8, 2010 7:27 am

      Totally agree, I have been developing in Joomla for a few years now and recently moved to WordPress due to the Joomla backend being such a pain for clients to use. WordPress is so simple and with Pods http://podscms.org/ it become very powerful. You can create custom content types, so for example having a people page that is administered in the back end with a new menu link called “People” which lists people and allows you to edit various details about them in separate fields, instead of having to do this as a “page” (WP) or “article” (Joomla) within lots of divs.
      And WP3 has a menu builder (a major problem with 2.x) which makes it really easy to manage different menus, including you big footer.

  24. 55

    Hans van Wezenbeek

    May 3, 2010 7:21 am

    Too bad Drupal isn’t in this comparison. For me this is the best suitable CMS there is, for every website. I always feel that with Joomla or WordPress you are too much ‘restricted’ in one way or another…

    • 56

      Amen.

      Though I’ll be the first to admin that WordPress has a sexy admin theme, there has never been something I couldn’t do with Drupal.

    • 57

      On the contrary, I find that WordPress is superior for some applications precisely because there are some things it doesn’t do. Fewer features equals less potential client confusion.

      And don’t underestimate the value of a sexy admin theme. A website that your client is afraid to update is a failed website.

  25. 58

    Great article. I’ve used both and see strengths to both. I typically use WP for any kind of blog site because it is the easier to use and simpler and more idiot-proof of the two. I use Joomla for any kind of larger site that needs broader functionality, especially community-based sites. I don’t regret either – both have their pros and cons.

  26. 59

    Moving away from Joomla and over to WordPress 3 years ago has been the difference between working for “The Man” and working for “Myself”.

    Clients were screaming for an “easy” way to add content, and “linking Articles and Menus” were more than they could bear when adding pages. With the ease of WordPress, I could concentrate on sales & development rather than support.

    I’m a WordPress (and Thesis) fanboy, but would love to see an article similar to this regarding Drupal.

    Good read, thank you!

    • 60

      Aaaaaaaaaaaaaaaaaaamen.

    • 61

      No need. I left Drupal for WordPress. It always felt like work to develop for Drupal. Developing for WordPress is a lot more like fun!

  27. 62

    I honestly find Joomla intensely user unfriendly. I always had a hard time navigating in the admin panel and it always seem to break itself at some point during development.

    I also hate the Section > Category > Page system. I can’t just use Categories since they require to be assigned to a Section.

    And I also recall getting the most cryptic error message once.

    “Something happened.”

    I kid you not.

    From that day forward, I swore never to use Joomla again. Of course that did not last very long. I had to use it again since it’s was a client wanted.

    I indeed prefer WordPress, but even WordPress has it’s quirks.

    • 63

      Marco Solazzi

      May 3, 2010 3:32 pm

      Yes, I also find Joomla admin UI design a bit frustrating.
      I think it’s underlying structure is solid and pretty well designed, anyway i’m looking forward a much more user-friendly UI.

  28. 64

    Been working with several CMS’s in the past years so here’s my 2 cents:
    Joomla has great components, like JCal which is one of the best solutions for clients that need large calendars and allow users to add their own events, and Community Builder. But Joomla is real slow and it’s stuck with Mootools 1.0! like anything else you can tweak to use jQuery, but it’s messy as many components require Mootools because they assume you haven’t touched anything, so then you have to have both and that makes it even worse. The other bad thing about Joomla is how the content is organized, it’s very rigid, section > category > article, it sucks because there are no tags so you can’t run filters which is nice for content that fits various categories. Fortunately, there is K2 for Joomla now, IT IS A MUST INSTALL!!! this component is a life saver and adds all the things Joomla users have been waiting for for years.

    As far as WordPress, I haven’t been using it much lately, but I really love it’s cpanel and agree that clients find it “easier” to edit their content. Still, I’m leery of using it on anything that might get really big really fast.

    It really depends on the long term goals of your project, you have to try to anticipate what the project is going to require down the road. If you’re just building a small website for a small to medium sized company and they don’t need a bunch of extra stuff, go with WordPress, it’s just easier. If you’re into a bigger project that will have multiple user groups, forums, calendars, several authors under many categories, big big stuff, I bet WordPress can pull it off too, but Joomla will require less tweaking.

  29. 65

    Drupal.

  30. 66

    The last version of Joomla I worked with was 1.5 and it still was a very admin and end-user unfriendly, chunky and it had a lot of shortcoming for a building a ‘more pro’ website.
    I learned the hard way.

    Mind you, WP is not perfect either, but it’s without any doubt much better than Joomla on any front, in my humble opinion.

    And WP too gives you a lot of headaches, once you decide to built more than ‘just another blog’…that’s the ‘charm’ of an out-of-the-box package, I guess.

  31. 67

    A nice bit of detail on both without going overboard. Many thanks :)

  32. 68

    i love textpattern. :)

    • 69

      I love ‘textile’ markup… but I thought Textpattern was RIP

      • 70

        No, Textpattern is still around, and getting better every version… TXP 5.0 will be out soon and looks really nice, its defenetly my option of choice before WordPress or any other CMS.

  33. 71

    liquidplastik

    May 3, 2010 9:41 am

    Personally, I love Umbraco. Yes, it’s .NET and only runs on Windows Servers, but it’s also open-source. It uses document types to define what properties a document should contain and then allows you to develop multiple templates for that document type. It’s a really well thought out CMS. You can also extend it via XSLT, .NET user controls, and IronPython. I suggest you guys give it a look! :-)

  34. 72

    angel sanchez y sanchez

    May 3, 2010 9:46 am

    particularmente he migrado a wordpress, jamas he tenido tanto dolor de cabeza y tanta perdida de dinero (que incluye rehacer un sitio que ya estaba hecho en joomla) por equivocarme al momento de seleccionar la tecnología de cms adecuada. Siendo diseñador web, he encontrado en wordpress una fuente gigantesca de personalización y de dinamismo al momento de realizar un proyecto web. Pense en su momento en usar umbraco pero se requiere si o si de un desarrollador asp y de sql, lo que limita muchisimo si no cuentas con un desarrollador adecuado.

    • 73

      Actually you don’t have to know SQL or .NET to use Umbraco. It’s useful if you are wanting to extend it to provide additional functionality. The only thing that you might be uncomfortable with is learning XSLT though, which is a vital part of creating and understanding macros.

  35. 74

    Great article!

    I worked in Joomla for a couple years before moving to WordPress. While I like Joomla, I tend to prefer working with WordPress. I just feel like it’s worth the little extra time it takes to create the theme.

    Joomla is just more than most clients need. And while I have no issues navigating Joomla’s backend, my clients on the other hand (who are a little short on technical knowledge) much prefer the intuitive & clean design of WordPress’ backend. The overall blog interface is much more intuitive as well, with WordPress.

    Both are good CMS’s. It just comes down to your needs and your personal preference.

  36. 75

    Interesting how many of the comments are consistent with Marco’s point about developer mental models…

  37. 76

    Nice vision

    I think both need to keep growing so we keep getting the better
    as to me i prefer WP

    thanx

  38. 77

    I really really really hate Joomla.

    There I said it.

    ModX is even worse.

    Drupal and WordPress are much better in my opinion.

  39. 78

    I have worked with both but WordPress it’ s a lot easier to work with. I had to build a blog in an existing website and I gave up since it needed some extensions I couldn’t find ( working with 1.5 at least) took ke only 2 hours to match the design with wordpress.

  40. 79

    Joomla’s too confusing, end of story.

  41. 80

    Lets talk Drupal instead!

  42. 81

    Honestly, there are only 3 real choices.

    WP for small to mid size sites.
    EE for upper mid to semi-large sites.
    Drupal for large to extra-large sites.

    Joomla is a joke. End users can’t use it, the HTML it outputs is horrid for SEO (td tags for headers?), and in order to FIX all the out-of-the-box rubbish, you need to do even more PHP work than WordPress requires.

    I remember that IBM also had a security report that they published in 08/09, which stated that Joomla was the number 1 source of security issues online – more than Microsoft, and Joomla is only a single product.

    However…

    At the end of the day, providers will choose the CMS that their users can use the best (meaning least amount of support calls and errors). They don’t care if the code is OOP, MVC, or Corn Pops Lucky Charms – what only matters is that they can actually USE their site, and currently, WP, EE, and Drupal are the ones that handle that the best.

    Anyway, since EE wasn’t mentioned here, I’ll throw in some info: EE has a tab for “templates” (where all the styling goes), and you can lock out that tab from users, so they don’t mess with it. And when you build the actual entry forms (where users input data), you can write instructions next to their titles/labels, so your users know exactly what to do with them.

    • 82

      With all due respect: all the fixes you listed are not out-of-the-box choices. Let me explain:

      Joomla’s problem is that, out of the box, it’s “not quite ready” for anything – it’s not quite ready to be a blog, not quite ready to be a portal, not quite ready to be a newspaper, UNTIL, as you say, somebody gets their hands dirty with code and plug-ins.

      And that’s the problem.

      We tried building a community website on Joomla early last year, and it was quickly evident that the CMS couldn’t handle it without excessive work (thus going over budget). There also wasn’t a large enough budget to allow for teaching users and non-tech admins. It had to be easy to use from the get go.

      Instead, we looked at WordPress and the Buddypress extension. It took 10 minutes to setup, and allowed us to allocate more resources into building a unique community experience, instead of on having to spend money into redoing much of the back end, and test if the plug-ins were up to par security-wise.

      Joomla may be fine from a developer’s perspective, but as a basis for a business case, the other CMS’ offer better ROI.

      To put it into plain english:

      User’s don’t want to LEARN how to use a system. They have a business to run. If the website needs getting used to, they avoid trying to use it.

      Web companies don’t like SPENDING money on having to make a CMS work the way it’s intended – while all the CMS’ require some work, it’s better business to simply pick the one that’s built for the job. Sure, I can use a hammer and nail, and I can use the hammer for a multitude of other things when combined with other tools, but if it takes twice as much time to do compared to if I used a nail gun, I’m not going to waste my time on that hammer – I only need one job done, and if the nail gun gets it done faster, and with little difference, I’m going for the nail gun.

      Time is money, and Joomla, despite being free, takes more time than needed, and costs everyone money.

      • 83

        As an Internet agency owner, I complete agree with you. I don’t care what people think about this or that CMS, but for us that need to produce as munch we can in a short period of time, WP is the right choice for us.

        But everyone has your football team, so be happy with your choice and try to extract as much you can.

      • 84

        I have to disagree.

        Extending a CMS is not “getting dirty”. You could say that when you need to get into code. But extending is where the beauty of using a CMS is – you keep adding more functionality with just a few clicks.

        Though I really agree with Joomla being unfriendly, being “out of the box” is one of Joomla biggest strenghts. Just look at the quality extensions and templates that there are for Joomla today.

        That if you can afford installing a few extensions, that still is “out of the box” imho.

        Important to note here that WordPress is not a CMS but a blog plataform.

        So if you need to get dirty to have a strong CMS than that would be for WordPress.
        You have to install a few plugins to make it a “true” CMS, know PHP to code a template and only then you worry about your widgets and extra plugins.
        (Though now I can start considering WordPress more as a CMS with WordPress 3.0)

        I invite you to take a look at Joomla today, there are a lot of changes going on and this wrong image that comes from Mambo has to go away.

        Joomla 1.6, WordPress 3 and Drupal 7 will make some noise soon :D

      • 85

        As I mentioned in my first post: WP is only used for “small” sites (e.g. small budget).

        When the site is specialized, we turn to EE or Drupal. Both outperform Joomla on a number of points, especially security.

        Whitehouse.gov is an EE site for example, so is visitphilly.com. MTV, The Onion, etc. run on Drupal.

        There’s a reason why those platforms were picked over the others…

      • 86

        Whitehouse.gov is an Drupal site.

    • 87

      Sorry, WP works better for large sites than Drupal. Drupal runs so many SQL queries just to load a web page it’s a nightmare to use. Yes you can cache pages on the front end to increase performance making the number of SQL queries moot, but you can’t cache pages in the admin.

      Local recruiters are begging for Drupal devs (because it’s so complex) but after my last Drupal project I’ve turned down ever offer since because I just can’t be bother to slog through that nightmarishly slow admin ever again.

      • 88

        Hm, I gotta take issue here.

        I run my own wordpress site and the last thing I expected was a big server load. At first the site ran well, but after a while and lots of traffic there seemed to be ALOT of CPU usage. I installed wp-supercache and made many fixes to certain aspects of the site and still encountered very high CPU usage.

        The amount of SQL calls WordPress does is epic (they are all probably needed though). This being said, I love WP. It is my favourite CMS/blogging application but this was a bit of a draw back for me.

      • 89

        WordPress for large sites!?!?!? Wow, that would be a nightmare…good luck my friend I’ll stick with Joomla and Drupal.

  43. 91

    Hi
    A message about WorPress, Joomla, Drupal…. for developers
    Since 10 years, with EasyPHP you can install quickly a WAMP environment on Windows.
    Since two weeks now, you can install (or add) modules as well. That means that you can install a version of WordPress, Spip, Prestashop, Drupal… and test it immediately. Perfect if you want to discover the last version of an application
    Enjoy coding!

  44. 92

    Drupal forever !!!
    Ciao Marco

  45. 93

    Modx is still the most robust cms out there! I’ve tried them all, trust me.

    • 94

      I agree MODx is great for SEO, very very very flexible (SNIPPETS & CHUNKS) and has alot of support.
      Also the font-end editing is very sexy and easy for the user. Even people who dont know any tech stuff can use it.

      WP is great too if you need a blog, but I love MODx…

  46. 95

    WordPress is our preffered CMS/blog of choice. Clean admin, active community and frequent updates. Plus if you’re prepared to get your hands dirty and start tinkering under the bonnet there really is very little that can’t be done with WP’s plugin api and a theme like Thematic. We’ve not even got on to benefits of WordPressMU…

  47. 96

    Happy to throw our hat in the ring here as well – for ANYONE looking to add video and rich-media to their WordPress or Joomla sites (and Drupal, Moodle, BuddyPress, Elgg and many more CMSs).

    Kaltura and its developer community have developed a full video plugin for WordPress as well as a full video extension for Joomla – feel free to try them out at:

    WordPress: http://www.kaltura.org/project/video_wordpress_plugin
    Joomla: http://www.kaltura.org/project/kaltura-video-joomla

  48. 97

    I’ll definitely add this to my research wiki!

  49. 98

    It amazes me that modx STILL doesn’t get a mention on these type of posts…

  50. 99

    I strongly prefer modX cms. It will be worthwhile…

  51. 100

    Johan Möller

    May 4, 2010 3:10 am

    Still refusing .net huh? Umbraco is my absolute favorite.

    • 101

      I wholeheartedly agree. Nothing comes close to it so far in my experimentation with other CMS’s.

  52. 102

    It amazes me too that modx is still so under-used !
    Frankly I have done templating for Joomla and Drupal. Even look at WP.
    By far Modx is the more easy to use ! I am currently working on my 2 first modx sites. I just can’t believe how easy it is to work with that cms. How user friendly is the manager. My clients started to work with before I had the time to explain them how to do so (and believe me they are really not tech-savvy).
    When I think to the ugly and messy admin interfaces of Joomla or Drupal… Why didn’t I give a try to Modx earlier… Maybe because people still continue to write about these old cms instead of looking at the future…

  53. 103

    nice…
    I’m a NOOB here.Just started to learn bout CMS thingy.
    Somehow I hope you can include drupal in the comparisons….

  54. 104

    Joomla is ok for beginners, WordPress is for blog-type sites.

    +1 for MODx if you know what you’re doing.

    • 105

      “WordPress is for blog-type sites”

      Actually, WordPress can be extended far beyond blog sites and is pretty much a full-fledged CMS at this point :)

  55. 106

    You may perhaps take a look at the gantry-framework wich gives Joomla-devs unmatched freedom in layout and development. http://www.gantry-framework.org/
    And its free (gpl) … best integration of 960gs for cms I have seen so far …

  56. 107

    Fantastic article. This is the best comparison of Joomla! and WordPress I’ve ever seen.

    I think many people would like to see this in depth of an article comparing WordPress and Drupal as well!

  57. 108

    WordPress is becoming a CMS, because is a Blog System. I prefer WP because the admin area is easy to maintain (plugins and core update with a single click) easy to produce and maintain content, and have a great companions with Buddypress and BBpress.

  58. 109

    Basically wordpress and Drupal are the best.

    I use wordpress for small sites.

    I use Drupal for large sites

    Respect this!

  59. 110

    Great article!!! Never had WP and Joomla compared and explained so well. Keep it up!

  60. 111

    Hi #parker,

    We think WP is a good tool for blogs, joomla for Small websites and Drupal for applications.

    Regards
    Lucas

  61. 112

    Not to be crass, but has anyone else noticed the Joomla logo looks like a circle jerk?

    not that there’s anything wrong with circle jerks, I’m just sayin’…

  62. 113

    Looked at joomla and drupal but finally settled on concrete5. It’s so powerful but also easy to use and develop with.

  63. 114

    ….or you could just use concrete5 to get the best of both worlds. joomla’s a dinosaur, and wordpress is awesome, but really is best suited for blogs, not larger sites.

    • 115

      Gotta agree with Joe, I use Joomla and Concrete5 depending on the job, but I would use Concrete5 over anything at the moment, its easy to design themes for, easy to manipulate the code, it comes with a ton of great features and an awesome UI. Also, I don’t agree with some comments about limited design freedom in Joomla. This is only correct if your knowledge or access is limited. I have rewritten elements of Joomla to display as divs and removed tags that I didn’t want, and its easy to apply CSS to elements that may not have classes or id’s through targeting child elements like “.class td a { insert: css here; }” I have print designers who come up with some whacky ideas that want their designs in web format and I have yet to run into a problem putting those designs in to Joomla.

  64. 116

    Pretty extensive topic these CMS comparations. According my several google searches and reading tons of materials on CMS comparations, no doubt that WordPress and Joomla are the most popular.

    Let me explain my situtation and why I beleive that Joomla! is choice for most of sites.
    I used to make static and dynamic with dreamweaver, later by handcoding so I know little bit about HTML, CSS, Javasript, SEO, PHP basics. Nowdays is webdesign really fast and webesigner have to learn really quickly (ajax/jquery, CSS3 etc…).

    So I decided why not to try something which will help me to develop sites faster and
    with possibility to use all advatages of full CMS, WEB 2.0 and available plugins.

    I have installed Joomla! and developed first corporate website for client (1 month during evenings and weekends). Here are te pro and cons

    PROs
    1. Learning sources – Joomla! support forums are great, online trainings, books available anywhere, most popular CMS (with WordPress) and well know worldwide. Multilanguage support out of the box.
    2. Extensions, extensions, extension – download zip and install and see result.
    You want forum, job board, community portal, e-shop, corporate site, google map,
    contact forms, multilanguage support(translations of website, directory..etc -> Download, Install, Customize (in backend)
    3. Templates everywhere – you can customize templates if you wish with your CSS/images. How deep customization – it depends on your understanding of CSS and Joomla.
    4. It took me 3,5 hours to train end users how joomla back-end works. So far no complaints. They know what is category, section and how to edit article, add image (several ways, link), make seo pages.
    5. Most popular CMS, you can even find job, if you have Joomla! knowledge
    6. Possibility to add own PHP/HTML code through plugin
    7. Customizable Back-end, perfect user-control

    CONs
    1. Issues during deployment on real server (cache settings, relative urls images in categories)
    2. Backend – Not easy for everyone, it takes time to learn it correctly.
    3. SEO works great but lot of third parties extensions do not support SEF urls.
    4. Page seems to be slower than pages created in WP. This is only my personal feeling.
    5. It takes 2w-1m to get to Joomla! (it all depends on your time)
    6. Joomla! specific knowledge will be needed if you want to develop own templates

    CONSLUSION – Yes, Joomla is not perfect but it is usable in most cases. For corporate website I doubt, that you will find better choice than Joomla.
    For small personal/small company websites, blogs I would prefer WP as it is much easier for end user (as I read here – but never tried WP myself). Most important point for me is extensions – some are paid (not cost too much usually) but majority is free. With these extensions you will be able to deliver full featured site really quickly.

    Can you do the same with WordPress or Drupal in same/shorter time?
    (sorry for length of message)

  65. 117

    Very useful article. Although I’ve been working on WordPress and Joomla for long time but I still find it very helpful. Well done!

  66. 118

    First sentence was “WordPress and Joomla are two of the most popular open-source CMS’ around.” . I smiled when i read it. Calling wordpress as a CMS :) you must be kidding right??
    Wordpress is a blogging tool nothing less nothing more. Far away being extensible. On the other hand Joomla! is a pure CMS. Next time, please dont put apples and oranges in a bag. Talk about Joomla with Drupal, talk about wordpress with movable type and so on.

  67. 119

    Website Design

    May 5, 2010 5:59 am

    Joomla is great for community and wordpress for blogs…

    but if you truly want a flexible CMS that allows for easy design/template creation then have a look at ModxCMS. Ajax features… Modx is my preferred CMS

  68. 120

    Joomla is my favorite for classic CMS websites. I’m using it since Mambo times and i love it. Building a medium size company website with News, Jobboard and calendar for courses…no problem…

    The joomla template system is great. Just build a clean static website an replace the content or navigation with module loaders…finished. Maximum flexibility and hundrets of powerful extensions. Easy Multilanguage, clean URLs, clean code with template overwrites…joomla ist just great!

    With 1.6, Joomla is burning away the more complex CMS like Typo3 when adding the only missing feature: ACL

    By the way: Worpress is not a CMS!

  69. 121

    Geshan Manandhar

    May 5, 2010 7:47 am

    just use Drupal, it rocks.

  70. 122

    Thanks for breaking it down. I have been preaching this from day one. WP and Joomla have completely different philosophy.

  71. 123

    I have been using joomla for long time.. now im planing to use drupal.

  72. 124

    I agree very much with the mental model idea. Everyone has models that make sense to them and within which they work best, which is why one model is horrible to one person and wonderful to another.

    We use WordPress for quick, commodity sites without much if any customization. Our preferred CMS is MODx, mostly because the “template system” is simply XHTML/CSS with some system specific tags, snippets, chunks, and Template variables. Documentation has been poor but some tutorials are great. We’re eagerly awaiting Revolution, a rewrite of the core. The ManagerManager plugin has been wonderful for end users and we’ve had similar experiences where our clients end up populating the content of the site themselves after an hour tutorial (and this includes placing promotions in a SmoothGallery slide show, building an index of all their staff, etc).

    We have a lot of respect for Drupal as well, Joomla less so, from a user interface perspective (and again this is very relative depending on one’s mindset). Recently did a Joomla project and it’s just not for me.

  73. 125

    Its not what you use, but the way that you use it.

  74. 126

    If you don’t want to spend weeks to learn how to develop templates, if you need advanced custom fields, if you want to manage not only pages but also data, if you need a multilingual site without any third-party modules, if you need to resize, crop images on the fly, if you need versioning of pages, if you need a visual form builder and if you need a CMS that your clients can easily use, then it’s time to meet with Silverstripe. New 2.4 version brings nested URL’s, MS SQL support.

  75. 127

    Joomla is the most frustrating cms ever, for both developers and users, have you ever tried to train someone to use this cms, they have to go to 10 different places to changes things, do things in the correct order or it doesn’t work, aaarrrgggghhhh!!!!.

    Modx is the cleanest & most SEO friendly cms and for the user it is so easy to use, template variable make it so easy to have very advanced layouts.

    • 128

      I agree 100% on this one. Joomla is too hard to understand for users. So many menus. Why haven’t the developers ajaxed this sucka?

  76. 129

    Carlo Rizzante

    May 8, 2010 7:42 am

    A similar article about Drupal, or an introduction to a smart first approach to it, would be very very welcome.

    But meanwhile, thank you for this one. It made me realize that if I’ve to switch from WordPress, I would like to land on the Drupal land.

  77. 130

    Drupal!! :)

  78. 131

    Worked with Drupal, Joomla, WP. Concrete 5 blows them all away. Theming can be learned in about a half and hour. Most user friendly CMS interface I’ve used. I’ve done about 15 sites using it so far… Upgrading is not a pain in the butt.

  79. 132

    Please!….DRUPAL f o r e v e r ! ! ! !

  80. 133

    Me just knows Joomla! but it helps me a lot already… Hope to get known with WordPress also, can’t wait for Joomla 1.6… Viva Joomla!

  81. 134

    why joomla is better than wordpress,drupal,typo3,modxcms

    why joomla is better than wordpress?
    joomla can easily add some features using joomla extensions,joomla can have a download section with jdownload,Docman,phocadownload,joomla has many gallery and slideshow extensions than wordpress,joomla has much more opitions to organize your articles
    joomla can design various kinds of sites,school,busssniess,goverment,wordpress is mosted uesd as blog,news,tutorials,gallery sites,for me ,i thinks wordprss is not good to design company and proferssional sites.

    why joomla is better than drupal?
    joomla has many tenplate club such as joomlart,yootheme,shape5,youjoomla,rockettheme bonusthem and free joomla themes and templates than drupal,drupal’s template is rare and ugly,www.joomla24.com has free joomla template everyday,
    joomla is easy to use with client than drupal,joomla is easy to use,easy to edit contecnt and design fornt end layout
    joomla has more many excellent extensions than drupal

    why joomla is better than modxcms?
    sorry,modxcms still developing,modxcms don’t have good template club as joomla have famous joomla template club,joomlart,rockettheme,gavickpro,yoothem,joomla has a good JED platform,and all of joomla extensions has details description and user reviews,joomla user can clearly know the quality of the extensions of joomla

    why joomla is bettter than typo3?
    typo3 is hard to learn and design a simple site,you will spend much more time than any other cms,typo3 lack english tutorials,template,extensions and everyone says typo3 is powerful but it’s really hard to implement some features

  82. 135

    good post. i like it. but i think, Joomla and wordpress are too good.

  83. 136

    First, thanks for this article and comparing the two most popular CMS platforms.

    While WP has been developed to be a blogging platform it is now proving to be a good CMS as well. The point is clear that end users want to get their job done; why should they know programming? And WP is a clear winner. I’ve checked out several scores of CMS/blogging platforms and there’s none like WP. Drupal is my next choice. Personally, I don’t like the way Joomla has been coded. If you want to have a custom website with CMS up quickly WP is the way to go. (Of course there are other CMSs out there depending on the kind of site you have. And some of them are easier to customize!)

    All three have good admin areas; customization is the problem with Joomla. So for the end-user it really makes no difference… once the site has been customized. You really need to look at the time/effort required for customization and this means cost. Other factors, upgrades, plugins, and if the system can keep up with the number of users and as size of the database increases.

    As has been rightly mentioned above, Drupal for medium to large websites. But for startups and small business, nothing to beat WP. Both the developer and client can go home happy.

  84. 137

    I have developed on both WP and Jooma. Joomla was really easy to theme, but adding in content into that terrible back end interface was a NIGHTMARE. Menu after menu after menu after menu just to add a new page to a nav bar.

    Then handing it over to a client was a task as they had to learn the interface too. It wasn’t a confusing interface, but a very very convoluted one.

  85. 138

    Nice article Marco. I have coded in both and I really enjoy coding in WordPress a lot.. Though, I guess i shifted to Joomla after using wordpress hence, didn’t enjoy it that much haha..
    I would like to point out a bug in your article.. in the part where you wrote about the WordPress loop:

    // post output here

    You closed the if tag before the while tag and that would create an error.. :)

  86. 139

    Good article! I might give WordPress a try, once I have a simpler site to do :-)
    I am more a designer than a developer but I can get into PHP and change the code if necessary. I have also tried Typo 3 (2 Sites) and Drupal (1 Site) but got stuck to Joomla because I really never found anything I couldn’t do or solve with it! I usually have quite complex corporate sites to do (with news, shop, events, directories, galeries, downloads, different page templates etc) and less of community type sites (blogs, social networks etc). Typo 3 was more or less ok but I found Drupal one big nightmare – I could have done the same site in less then half of the time and with a tenth of the fixes using Joomla …

  87. 140

    I like making little houses out of lego.
    Lego is more fun than all of your lame CMS systems.

    ( Learn a CMS which makes sense to you, if an employer uses something else, learn that. ) Its almost like saying “Which SUV is the best at going offroad?”, theres hundreds of them and everyone is different…

  88. 141

    Daniel Maffioletti

    June 6, 2010 5:20 am

    Has developed projects with joomla and wordpress. No doubt the learning curve of wordpress is smaller. Much more friendly for a novice developer. Joomla is not weak. Many opniões here are certainly based on frustrating experiences of others. There are beautiful works in joomla, but customize is not an easy task for those who are not environmental. But each project is a project. Depending on the need joomla give you what you need without having to customize. I particularly loved working with wordpress. Very flexible and no longer only choice for small projects.
    What is the best tool? Certainly you have mastered.

  89. 142

    What an in-depth coverage of the topic, which is a very confusing and debating issue.
    Being a WordPress designer and coder I have good experience working with WordPress sites, and it wasn’t easy at all for me to move over to Joomla which I believe has a steep learning curve.

    I’ve compiled areas where I think Joomla beats WordPress here,
    http://www.elmalak.info/joomla-beats-wordpress/

    Hope you agree with my points.
    thanks,
    elmalak

  90. 143

    Would anyone have pointers on how to convert a wordpress theme to a joomla template? The wordpress themes that are out there are miles ahead of the joomla themes.

  91. 144

    I like WordPress so much, Joomla is stupid

  92. 145

    It is very disturbing fact that people still use Joomla for their CMS needs when a CMS like WordPress can do it all.

  93. 146

    This was a very interesting article. Would love for you to check out my wordpress site:
    globalnerds.com

  94. 147

    Jamie Brightmore

    June 30, 2010 4:28 am

    As a regular user of both these platforms, it’s nice to see the underlying engines explained in detail. Hopefully this article will give people, who perhaps only use WordPress -or- Joomla -or- something else, the inspiration to experiment with another CMS. Had I not already used for them both for numerous production sites, I feel this would defiantly spark some interest, and in fact, has got me thinking about Expression Engine again. Using both of these CMS’s empowers me be able to produce a full range of websites to suit varying requirements. The upcoming Joomla 1.6 release will further solidify the platform as a seriously powerful CMS, primarily with it’s eagerly awaited granular ACL system. I’m also looking forward to WordPress 3.0, which looks set to significantly enhance it’s CMS capabilities with powerful features such as post types and custom taxonomies.

    At the end of the day, clever web designers learn how to use multiple systems to serve their clients needs, even if this means ruling some out, and potentially just sticking to one in the end. It can’t hurt to have a broad capability, you never know when it may benefit your career or business. Personally, I’ve not yet settled on one particular platform as the range of work I do is so diverse and requires different back-end engines.

    Until I discover one system to-rule-them-all (could this be Expression Engine?!) I will happily continue to use these two great platforms whilst continuing to integrate exciting new web technologies like CSS3 and HTML5 along the way :) Great article Marco!

  95. 148

    Thanks for the article! I have used this model for years:

    If its a simple site or a site with any kind of blog and not a whole lot of interactivity…I use wordpress.

    If its a more complex site with custom needs and things that I will most likely have to develop myself, I use Joomla!

    If its a web application as opposed to a website, this means virtually all of it will need to be custom built…I use cakePHP.

    I much prefer working with Joomla! for it’s structure and understandability, but it has a greater barrier to entry than wordpress…

    If you are showing a client the backend, they will choose wordpress everytime!

  96. 149

    a) Not sure if there’s an updated plugin for this, but I usually just copy/paste text widgets, running the exec-php plugin, if i need to query anything
    b) Custom Menus, which let you drag’n’drop all of your pages/posts/cats/whatever, are standard within WP3. You can create multiple menus and call them into different places and also generate drop-down menus. A good starting point to familiarize yourself is through the default TwentyTen theme.
    c) That’s another default for the TwentyTen theme… just a few lines in functions.php to enable this. You could also use the Featured Image template tag to call in your pics from your post kind of like you do with the_content or the_title.
    d) Yep, with WP3 you can also create your own custom post types, which basically adds another menu item to the Dashboard. So really, you could create a “Product” tab, click on it and it would generate a product link a la tld.com/product/my-product/. This is going into custom functions, though, but it’s definitely in core if you want to use WP that way.
    e) To my knowledge, this was always possible from version 2.3 on… maybe even earlier.
    f) Alas, the Achilles heel. While the template tag has gotten significantly shorter to include different sidebars onto different pages/posts, it’s not drag’n’drop — yet.

    Hope that helps ;-)

  97. 150

    I’d say, that the best use both of these CMS’ comes from the need for their ability. WordPress has an ability to be a simple blog platform. Joomla has a lot more to offer in terms of its features. It is possible to match their features, but isn’t it the same as using a piece of raw metal to cut down a tree if you have an axe? You could melt the steal and make a saw or an axe, but why go through all this when there is a tool already made? Here is an article that’s in addition to describing well what I mean here, also gives some very good clues about what platform to choose: http://nookeen.wordpress.com/2010/10/23/joomla-vs-wordpress-top-4-differences/

  98. 151

    great set of information and examples. Thanks for sharing.

  99. 152

    i prefer wordpress because it is seo friendlier than joomla.

    wanna bet? :P

  100. 153

    Drupal for more extend with big job, and WP for “medium” projects……

    Joomla is mootools. And i’m not experience with mootools…..

  101. 154

    Joomla is bloatware. If you need to do something wordpress can’t do, you’re better off writing a CMS from scratch in PHP. You’ll actually finish quicker than trying to wrestle with the byzantine lines of obfuscated nonsense known as joomla. Both Joomla and Drupal are known for being too hard for computer-illiterate people to figure out. So what good are they? I’ve read stories of businesses and gov. organizations redeveloping their sites after their employees couldn’t operate Drupal.

  102. 155

    thanks ……… !!!

  103. 156

    very nice post…i am using wordperss and just started joomla..
    got helpful tips here to understand relative patterns

  104. 157

    Nice vision

    I think both need to keep growing so we keep getting the better
    as to me i prefer WP

  105. 158

    For all the hoopla over this issue, I am sure people on this thread only communicate in one language. In the future, the debate will be what CMS is the best-for the number one multilingual usage, front and backend.

    The only one that I have seen work fluently is wordpress using qtranslate. Once ANYONE can convince me otherwise, (yes I tried joomla and joomfish) (joomfish not even ready y for joom 1.6) I will go for the switch.

    TELL ME WHAT CMS IS FLUID WITH MULTILINGUAL: AND I WILL DROP WP IN A FLASH>

  106. 159

    Thanks for this post! After developing my site in WordPress growninthecity.com, I got some work to develop a Joomla site. Just as you described here, I felt like I was “missing something”. Where was the ease of design?!? I guess it would be just as hard to go the other way. Thanks for confirming that I’m not crazy!

  107. 160

    I recently spent a month learning Joomla 1.5 & 1.6, using two online manuals and even bought a book before I gave it up. Too many bugs with the extensions. I asked myself why I should be digging through PHP trying to fix things when CMS is supposed to be the the easy way to build a website! Maybe it was because 1.6 is still new. Then I tried WordPress 3.1, as the free service from WordPress.org, spent about a quarter of the time on it that I spent on Joomla, and loved it! The plugins worked more often, and when they didn’t then I would write a forum complaint and the developers would get right on it and e-mail me that they had patched it. WordPress cannot do as much as Joomla, but more options made Joomla more complex, for me the developer, and also for the end user I was trying to train on how to use the website I made. I think the difference is that paid professionals at WordPress.com are keepting tabs on their free service at WordPress.org and they have a vested interest in the user experience of both translating into street cred for the paid service. It is kept simple and nearly bug free.

    • 161

      Abdessamad Idrissi

      May 11, 2012 11:06 am

      You said; …WordPress cannot do as much as Joomla..
      Do you know something that Joomla can do and WordPress can’t?

      I used WordPress for all my websites, whatever complex scenarios I had, WP never was stopping me in achieving what I wanted…

      WordPress is used by over 14.7% of Alexa Internet’s “top 1 million” websites and as of August 2011 manages 22% of all new websites. WordPress is currently the most popular CMS in use on the Internet … As of December 2011, version 3.0 had been downloaded over 65 million times.[Wikipedia]

  108. 162

    Thank you… this is what I’m searching for….

  109. 163

    Melvin Mcpherson

    March 4, 2013 8:58 pm

    Though Joomla and WordPress are the most well-known but Joomla Development is best for creating websites targeted to e-commerce and website challenging a more professional contact.

  110. 164

    Excellent point on “choosing the right CMS”. Actually, most importantly you should base your work around the content and what you’re doing rather than the platform and technical stuff. Plus, there are tons of tools to switch between platforms, so it doesn’t really matter which one you start with. I recently moved from Joomla to WordPress quite fast and without too many issues (thanks to http://www.cms2cms.com – no affiliation). All in all, the idea behind these CMS is the same, so why argue about them?

↑ Back to top