Drupal North East: Drupal versus Wordpress

One of the big questions of working in web design and development is what tool to choose. And when it comes to using a CMS, the question is often specifically "Wordpress or Drupal?"

At this month's Drupal Northeast, Phill Brown took on the challenge of comparing their strengths and weaknesses.

The executive summary is that Drupal is best for

  • larger scale apps
  • integration with other systems thanks to its good API and loosely coupled modules)
  • multi-role sites Wordpress just isn't good with it. 

Wordpress is best for

  • blogs: which isn't surprising as that was its original use (and still is for many people today)
  • brochure sites as while it can only accomodate simple content types it is very easy to theme to a high standard. It also supports HTML5.
  • small shops: the WP Commerce module makes it easy to hook on a shop to a simple site, and the Woo Commerce module released today is drawing a lot of excitement.

The most interesting things for me (which I barely mention in my notes is the difference in approaches when it comes to theming best practices. I was suprised at how little information there was around at coding a plugin for making a custom post type, and found out from Phill's talk that in Wordpress, it's encouraged to initialise post types in the theme rather than a plugin. (In Drupal, much is made of keeping structure and presentational markup separated). This makes sense in that it allows companies to sell magazine or shop like themes with custom post types included (though, as I found out working on a project, it makes life more difficult should you want to make structural changes).

Full Storify coverage below.

 

Comments

"it's encouraged to initialise post types in the theme rather than a plugin" Not sure where that comes from but as a WP developer I wouldn't agree. Themes are for visuals, full stop. While there is a need for some plugin-like code, anything else should be provided in a separate plugin to split form from function.

I also don't agree with this assertion: "multi-role sites Wordpress just isn't good with it." It's actually very easy to build "templates" so that when creating a new site in a WP MS environment that new site automatically has a particular theme and plugins activated and ready for a particular purpose.

Many plugin developers are also building extensive multisite options into their plugins now, allowing fine-grain control over what sub-site admins can and can't do with each plugin.

I do agree that Drupal is better for larger scale apps. WordPress has a lot to learn from the coding standards in Drupal too, which would go a long way to sorting the biggest problem with WordPress: conflicts.

If it's best practice to make new post types in a plugin, why wasn't there *a single post* that explained how to do it? Every example I see for adding custom post types and meta boxes says to do them in the theme. I had to learn myself how to do it by cobbling together information. (I'm going to do a post about it shortly).