Anne Kowalski

Web Design & Content Management

Comment » WordPress and Drupal: Which is better for blogging?

I spent the past few days comparing WordPress and Drupal for the purpose of power this blog. During this process I considered the pros and cons of both systems, and outlined there here for anyone who is considering implementing one of the two for a blogging website. I've also compared the two in aspects to theming, since most people using the systems will probably want a custom design.

As of the time of this posting, I am using WordPress 2.1 and Drupal 5.1. I am basing my comparison off of these versions, and have stuck to the options available in the default installation as much as possible.

WordPress

http://wordpress.org

Advantages

WordPress's main benefits are the quick installation, ease of use, and the fact that it was created especially for blogging.

Part of the fast setup comes from the fact that there are not as many options as in a Drupal site. This makes the administration interface is extremely intuitive and easy to navigate. Navigation is logically structured by task, with submenus appearing on a bar below the selected tab. It is very difficult to get lost in the WordPress administration interface.

Shown below is the dashboard of Anne Kowalski:

WordPress administration dashboard

Creating posts in WordPress is a very fluid process. Everything you need to create a post is there, with WordPress comes with a WYSIWYG editor, which I believe is TinyMCE. It includes basic formatting options:

  • Strong (bold)
  • Emphasize (italics)
  • Strike-through
  • Ordered and unordered lists
  • Indent and outdent
  • Left, center, and right align
  • Link/unlink
  • Insert/edit image
  • Split post
  • Spellcheck
  • Help

By pressing CTRL+ALT+V in Firefox (ALT+V in Internet Explorer), the advanced editor functions are shown:

  • Heading/paragraph format
  • Underline
  • Justify
  • Text color
  • Copy and paste from plain text or MS Word
  • Remove formatting
  • Code cleanup
  • Character map
  • Undo/redo

Creating a blog post is straightforward. Posts are automatically saved while editing. While creating a post in WordPress, you can fully focus on the content and not worry about the . The only confusing part of the Write Post section for me was the Post Slug option. After a quick Google search I discovered that all the Post Slug does is allow the user to specify a custom URL for the post. Otherwise, all the options are laid out using easy-to-understand headings.

Disadvantages

Website owners that need a more robust website that includes more than just a blog and a few static pages might find WordPress too limiting in features. A wide range of extensions (known as "plug-ins") exists, but at its core WordPress is still best used as blogger. Websites owners that will eventually expand their site to include more than blogging and a few static pages will most likely be frustrated trying to expand WordPress, despite the amount of plug-ins available.

WordPress also lacks sophisticated user control. The default installation includes five roles: Subscriber, Administrator, Editor, Contributor, and Author. No options are given to customize these roles, or create new roles.

Theming

Many designers don't seem to have too much difficulty theming WordPress, but in case if you don't want to make your own there are over 3,000 themes available for download. For the do-it-yourself crowd, theme development instructions on WordPress are clear, concise, and easy for someone with no PHP knowledge to understand.

Drupal

http://drupal.org

Advantages

Drupal's strength lies in its sheer flexibility and control. Drupal can run just about anykind of website. There is even an e-commerce module (extensions) available, though many users would find it too limiting for an online store.

In order to create a single-user blog with commenting and custom URLs on Drupal, I enabled the following modules (which are all included in the default Drupal install):

  • Taxonomy (custom categorization of content)
  • Commenting (self-explanatory - enables user commenting on content)
  • Path (URL rewrites)
  • Search (site-wide searching)
  • Statistics (enable site logs)

User management is not nearly as restricted as in WordPress. Once created, user roles can be customized in just about any way possible. It is very easy to restrict access to certain features, or enable them as read-only. Shown below is an admin screen for user access control:

Drupal user access control screenshot

Drupal allows for both single and multiple user blogs. Single users are usually better off using the Story content type to create blog postings. Interestingly enough, for single users the Blog module does not need to be enabled - this is an option more for a site for multiple-user blogs.

Another advantage to using Drupal for blogging is the built-in revision control. By simply selecting a checkbox on the bottom of the page, an original copy of the content is retained.

Drupal revision control

Disadvantages

The Drupal administration layout can be very overwhelming for new users, due to the amount of options available. Shown below is a screenshot of the administration section of my other website, BunnyOne Design:

Drupal administration theme

This only shows what could fit into the screenshot taken on my 1280x800 display laptop. Again, this is only the top level of the administration page. It is not difficult to use, but it can take a while to sort through all of the available options.

Drupal also does not come with a WYSIWYG editor in the default installation. Users must either know HTML in order to format text, or a WYSIWYG editor must be installed as a module. Two popular WYSIWYG editors that integrate well with Drupal are TinyMCE and FCKeditor. I like using TinyMCE for BunnyOne.

Creating a blog post in Drupal is not as intuitive or convenient as in WordPress because Drupal is simply not tailored to be a blogger out of the box. It isn't difficult by any means to run a blog using Drupal, but WordPress just feels more polished in this aspect.

Theming

To fully realize Drupal's power and be able to theme it the way you want, be prepared to either know or learn a little PHP. (I also suggest getting a copy of Pro Drupal Development if you plan on working with Drupal.) A web designer that knows only XHTML and CSS will probably have some difficulty converting a design to Drupal. The Pro Drupal Development book summarizes it nicely on page 111:

Suppose your designer has already given you the HTML and CSS for the site. How easy is it to take the designer's design and convert it to a Drupal theme? It's actually not that bad, and you can probably get 80% of the way there in short order. The other 20 percent-the final nips and tucks-are what sets apart Drupal theming ninjas from lackeys.

I wonder if this is part of the reason why there are less than 100 themes for Drupal 5.x available for download.

I found Drupal's Theme Developer's Guide more difficult to follow than the one on WordPress.

Conclusion

For the sole purpose of single-user blogs WordPress is the winner. For most individuals and small business that want a blog along with a few static pages, it can't be beat for its ability to automate blogging tasks. For most, WordPress is a great balance between features and ease of use. Theme development seems a little easier for someone without a PHP background.

Drupal is an amazing CMS, but the sheer number of options can mean it can take much longer to set up a blog. However, power users and website owners of more general websites will appreciate the extensive customization options. A designer with knowledge of PHP would have little difficulty making Drupal look the way they want.

Both Drupal and WordPress have strong communities as well as tons of documentation online, but the WordPress community seems to be kinder to the less technically able. If you need professional support, there are consultants available for both Drupal and WordPress.

To test out both options for yourself, interactive demos are available on OpenSourceCMS.

Posted by Anne Kowalski on 05/22 at 07:04 PM

Name:

Email:

Location:

URL:

Smileys

Remember my personal information

Notify me of follow-up comments?

« Back to main