We asked a bunch of web development and design firms what Content Management Systems (CMS) they typically use to deploy CMS-based sites for their clients – whether they build their own, or customise/hack existing solutions.
A few stated that they built their CMS solutions from the ground up using PHP, without using off-the-shelf packages. These were customised to be able to manage and edit sections that each client required, making them leaner and more user-friendly. Admirable!
Rails-based CMS solutions tended to be lower down in the list due to hosting constraints on clients’ servers.
Clients themselves tend to ask for solutions using Joomla and Drupal.
Joomla seemed to be a popular open-source choice, with continual development and bugfixes, although bloat may be significant.
Some developers we asked felt that Drupal was overkill for basic sites.
Some also named Expression Engine as an option which isn’t open source but seemed to have good support based on their user forums.
Textpattern also came up as a simple solution that was easy to use and implement.
The solutions named made up the following list:
We like to look at CMS solutions based on three criteria:
1. ease of use for the user-admin (i.e. the client)
2. ease of customisation of views and templates to produce a unique look and feel
3. ease of development of site and required features
So we looked at a few of the above and this is what we think:
Rails-based solutions like Mephisto, Radiant and Substruct
These didn’t seem quite mature enough in terms of both built-in features and available extensions/plug-ins. Developers may find themselves hemmed in without sufficient features and spending time developing new features on top of the CMS code, in addition to customising the views and templates to make them look polished.
Building and customising on top of Radiant may also be a little troublesome because modifying the template files may require use of their own markup language – radiant template language – which isn’t the same as rails view code.
Substruct is really for building online shops (and seems quite good at that too), and the CMS support it has seems more suited to adding the extra html pages needed for the shop, rather than building functional site pages with rich features. The sites it generates tend to be shop-centric (with the shop as the main focus of navigation) and getting out of that mode could be a little troublesome. It’s the same idea as using WordPress to build a CMS site (instead of a blog) except WordPress is more mature and can handle the mutation better.
Textpattern seems to have a pretty good library of plugins including e-commerce, photo galleries etc., as well as a bunch of other resources. The user-admin interface is supposed to be fairly easy to use, although the editor only supports plain text, textile or xhtml (no WYSIWYG, which can be troublesome for clients).
Expression engine is not open source (i.e. not free, at USD250 for a commercial licence) but it can do quite a lot of things, including mutliple weblogs, e-commerce, galleries etc.
There are three licences – the core version is free but limited, the personal licence is USD100 and the commercial licence is USD250.
From the video tutorials, it looks like Expression Engine works in a similar manner to WordPress, except Expression Engine organises and manages content in multiple weblogs (while WordPress is a single weblog with a set of static content pages).
The content is stored in the weblog entries, and rendered/organised/mashed-up using the templates. Templates can also function as static pages (as in WordPress). So it’s easy to generate multiple feeds of content rendered as different sections on a single page. For example, you can have a news blog for a news section, an events blog for an events section, a photo blog for a photos section, and you can build separate templates to display each set of content on its own page, or your can build a single template to display feeds of content from each of the bogs on a single page.
That seems to be the gist of how content is managed in Expression Engine, although I’m sure it’s extendable further.
WordPress also has a huge array of plugins generated by its open source community that widely extend the functionality of a WordPress site. That’s actually generated a range of e-commerce plugins to choose from like this and this.
We’re not about to draw any quick conclusions right now, because this really is a very brief survey, but it’s opened our eyes to the range of solutions available, depending on what your client needs.
Thanks to all who participated in our research!
Talk to us: What are your thoughts about the above solutions, and what solutions have you deployed?