November 20, 2008

Drupal and WordPress for Content Management

Filed under: General news — Tags: , , , — Webopius @ 11:28 am

For most clients requesting a website build, we now use a Content Management System platform. The latest CMS platforms provide you (the developer) with a robust, extensible data driven platform on which to build sites. For the client, they provide flexible access to their content, users, permissions and files.

At Webopius, we develop for both ASP.NET and Unix platforms. On Unix, 90% of the time, we will use either Drupal or WordPress for content management. On Windows, it’s less clear cut as we can often build custom sites on .NET without a dedicated CMS, or we use DotNetNuke.

Wordpress icon

WordPress as a CMS?

You might have spotted WordPress mentioned above. As a CMS? But, you might ask, it’s a blogging system isn’t it? True, WordPress is a highly successful system for creating blogs. However, because of this, it has one of the best content editors available along with a solid database layer. It also has hundreds, even thousands of plugins available to extend the core functionality. Webopius.com itself is built on WordPress but it doesn’t look like your traditional blog.

What we like about WordPress…

  • Short learning curve
  • Ease of use for end users
  • Excellent administration system
  • Very search engine friendly
  • Large collection of extensions available
  • Reasonably powerful API

What’s not so good

  • Finding the right plugin can take a long time and you have to work your way through lots of ‘in development’ versions
  • Some of the API documentation can have gaps
  • No real support for running multiple sites off the same code base
  • Despite what we say, WordPress’ identity is as blog platform and for more complex sites, you need to consider a dedicated CMS.

Drupal Icon

Drupal

For ‘power’ sites, you can’t beat Drupal. Drupal is a truly generic content system, out of the box, you get two basic content types – Pages and Stories. Under the hood, these are stored as ‘Nodes’ – the fundamental content type in Drupal. The real power comes by extending Drupal with themes and modules that add new content, database access and styles to your site.

But Drupal isn’t perfect. It’s so generic that it doesn’t come with a WYSIWYG editor installed and support for uploading images requires a number of modules to installed. The learning curve for Drupal is also large and it can take a while to ‘get’ the way Drupal is structured.

What we like about Drupal…

  • Flexibility – it can pretty much do anything you want
  • Hugely powerful and extensible API
  • Multiple sites can run from the same codebase
  • Scales well for large sites
  • Online documentation and support is excellent

What’s no so good…

  • Complexity with a long learning curve
  • Content editing is pretty basic – no WYSIWYG or image uploading without additional code
  • Debugging can be a challenge
  • Some of the APIs require a lot of coding to get basic things working such as the database API or forms API

Why not use a commercial CMS?

With the vast online development community and regular updates of both WordPress and Drupal, unless a client insists, we don’t use a commercial CMS. It’s personal choice, but we find we work quicker with access to the source code and feel we can provide a better product tailored to the client’s needs.

Is this the end of commercial CMS systems? Of course not. There will always be a need for commercially licensed products with official technical support. The lack of cost, availability of source code and the support from the online community make OpenSource CMS systems an attractive choice though.

I’m sure this post is going to generate some comments. Go ahead, tell us what you think. Are you a Drupal fan? Or are Typo3 or Joomla your choice? What’s the next big thing in CMS systems.

  • Tags