A Web Design and Development Blog

latest posts


Choosing a CMS

Once you have decided to use a CMS, which one do you choose? Should you build your own or use existing software? And if so, which one?

Hello again -

So we decided to use a CMS, making it easier for both us and our customers to update their web sites.

Since we had considerable experience in building CMS elements, building one was an attractive option. There were pros and cons. On the positive side, we could develop something to exactly our specifications. We would know the code inside out. On the other hand, it would take time and money to develop. Every time a customer had a different or new request we might have to further develop the CMS before we could complete their website. We couldn't include every conceivable element in our initial specification. Were we reinventing the wheel? Had someone already done it - and if so could we use that instead?

Some online investigation revealed a whole slew of existing CMSs. Some free, some paid for. Free? Sounded good! But would they fit our requirements? And would a free CMS have enough ongoing development and support to make it usable?

Being sceptical, and looking several gift horses in the mouth, we first looked at the 'paid for' options. Well, initially they looked expensive. Most of them made you pay for every single web site you created using them, and some had fees depending upon the number of web visitors. Some wanted us to pay for systems that were hosted on servers owned by the CMS providers themselves. A hostage to fortune? We would prefer to be in more control than that! We couldn't customise them, and some didn't even have demo versions to try out before we bought. Any costs incurred would of course have to be passed on to the customer. It didn't look much better than building our own to be honest.

So we went on to look at the free CMS systems. There are a fair few of them. Most operate on the 'Open Source' model. For more about Open Source software see here - http://wiki.ask.com/Open-source_software. To explain briefly, Open Source software costs nothing, but you can't charge for it. That's fine, we would much rather charge our customers for the functional design and template creation rather than the base software. In addition, many of the Open Source CMS systems have very active development programs and large, informed user communities. Those are essential prerequites as far as we are concerned - it provides an update path and the security of having online support should problems arise. As far as our customers are concerned it means that their site is supplier neutral. They can find other people who can look after their site should they decide that we no longer fit the bill. That's not the case if they go for a bespoke system. Of course, we don't want our customers to move on - and very few do. We are confident enough in our capabilities not to have to have to hold our clients hostage with a non-transferable site!

OK, so an Open Source CMS should fit our requirements. But which one? There are a lot available. 

We knocked out the brand new, the sparsely used and the ones that didn't have a thriving user community. We kept the ones that were in active development, were widely used and were extendable - allowing the user community to contribute modules that expand the capabilities of the system. We would also like the system to be based on PHP and MySQL as these are core in-house skills, and we would be easily able to modify any system using these technologies.

We were left with a few candidates.

Joomla! and Drupal were, at the time of choosing, the two most widely used candidates. We trialled both fairly extensively. As I am from the 'design' side of the web more than the 'development' side, I have to say that I found them both hard going. I wanted to design a site to look as I and the client wanted, then to use the CMS to implement that look and feel. Both Joomla! and Drupal seemed to want to force the process to be reversed. You install the CMS, then wrestle with it, trying to batter it into submission until it looks mostly like you want it.  And even when you had done that, it was fairly easy to identify it as a Joomla! or Drupal site. From our point of view, that was unsatisfactory. 

We looked at Concrete, CMSMadeSimple, Expression Engine, EZ Publish, Mambo and MovableType. And rejected them all for one reason or another. Lack of user community, poor support, difficulty of use or inflexibility of customisation. 

Then we tried ModX. And finally found an Open Source CMS we were happy with. Why? Well it is based on PHP and SQL, allows the designer to specify exactly to look and feel of the site, has a very active user community, is widely used and is in constant development. We have been using it for well over 18 months. A completely new version has been released (ModX Revolution) but the original version (ModX Evolution) is still very well supported. The web sites we have created using ModX have been robust and stable. We have been able to update them structurally as required by customers.

We are very pleased with our choice of CMS and our customers (who don't really care about the underlying technology of their sites!) are happy with the results.

In our next article, I will look at how our customers have got on with updating their own websites. Exactly how possible is it for non-technical staff to update their sites?

Add a Comment