A blog by the Brick Factory The Brick Factory

WordPress vs Drupal

At this point, nearly all of the websites we build are either in WordPress or Drupal. Sure, we build custom applications on occasion and sometimes do Flash work that really doesn’t fit in a Content Management System. But mostly we use WordPress and Drupal.

Both are fantastic open source blogging platforms/content management systems with robust user communities. Both systems have their strengths and weaknesses. They are great alternatives to closed, paid platforms and much more cost effective than custom builds. As a web development shop, using Drupal and/or WordPress allows us to focus our energies on design and strategy as opposed to reinventing the content management wheel.

After implementing a variety sites using both WordPress and Drupal over the years, we’ve sort of developed our own unwritten rules as to when to use each platform.

Single Person / Group Blog (Use WordPress)

If you are building a straight on single person or group blog, I think WordPress is the way to go. It has all the base functionality you need built in and a robust set of plug-ins if you need to add on. The admin interface is dead simple – anyone with basic computer knowledge can master it in a few minutes. The install of the software is also simple and the templating system is not difficult to master.

Anything you want to do in WordPress, you can also do in Drupal. But Drupal is more complicated from a design/install perspective, and has tons of features you’d end up turning off/not using for something simple like this.

A good example of a blog built using WordPress is our modest blog, Brick by Brick.

Blog Community (Use Drupal)

At a certain point your simple blog sort of crosses a line and becomes a blog community. Here are the things I look for:

  • In some cases you are going to want people to navigate directly to an authors blog instead of the main page of the overall blog.
  • Your blog has 10+ authors.
  • There is the possibility that your commenters may themselves become contributors.

You can accomplish these goals by extending WordPress. You can also use WordPress Mu, which a community-version of WordPress that we don’t think is quite ready for prime time. However, these kinds of sites are pretty much the reason Drupal exists. All the community-based features you need are available right away upon setup with little tinkering required.

A good example of a blog community is TechPresident.

Blog Driven Website (Use WordPress)

With its pages section and various plugins, WordPress can be used as a full on Content Management System for blog-based websites. Lots of companies (including us) long ago abandoned the old fashioned press release and use blogs as their primary content delivery mechanism. Assuming your overall templating system on the site is pretty straight forward and you don’t have hundreds of pages, WordPress works perfectly well for these types of sites.

Once again, Drupal can accomplish the same thing but it is a little more complicated to deal with and the admin interface is a little more complicated. It is sort of like driving a Ferrari in bumper to bumper traffic – you will get from point A to point B but you’d ultimately be better off weaving through traffic on a motorcycle.

The Washington Area Women’s Foundation is a good example of a WordPress-based site that we built. In addition to having all the content editable through WordPress, we also built a few databases as custom plug-ins.

Full Featured Website (Use Drupal)

At certain points, a site simply becomes too big for it to be sufficiently managed using WordPress. If you find yourself bumping against any of the following scenarios, you should probably be using Drupal:

  • If you have multiple dynamic content types (press releases, news articles, blog posts, etc.). Drupal is great at allowing you to create this stuff on the fly, with WordPress you are hacking things together.
  • If your site has more than a two template design structure (homepage and second levels).
  • If you have numerous content blocks on the homepage or in sidebars that you will be editing frequently. Drupal’s block system is great at this kind of stuff.
  • If you are trying to start small and expect your site to add tons of features/content moving forward.