I did a quick review of a couple of CMSs for a project at work. I limited myself to looking at a shortlist of 3 Free Software, LAMP systems, the aim being to select a system for a medium-sized website, with mostly static content, which can be updated easily by the customer.
I was looking for:
- Feature-completeness. Had to provide hierarchical taxonomy of pages, end-user login and editing, feedback forms, search
- Low barrier-to-entry. It had to be easy to pick up and customise and use
- Support for standards and usability. Had to (easily) be able to output valid XHTML and to generate ‘friendly’ URLs.
- Easy content generation. Had to be easy for the client to add content and make changes.
Clean install. Support for multiple sites. Has very good documentation. Seems to have a very active community. Very straightforward support for standards (in that the templating/theming language is very simple, and it is easy to implement standards-based templates). Plugins and customisations, equally, seem to be quite straightforward.
It does everything I need it to do, in terms of built-in functionality, and available modules.
The clean administration interface should make it straightforward for the client to add and edit their own content, plus there’s rudimentary version control of content too.
The focus of E107 seems to be on community portal sites, and it feels like a collection of plugins rather than a coherent system. The admin area is very large and confusing. There appear to be too many slightly-overlapping concepts.
Documentation is scattered and unfocused.
Templates appear to be quite hard to create/modify, and the content areas of the page seem to use non-semantic terms like ‘left column’ and ‘right column’.
Large profusion of modules, though.
Forked from the Mambo project.
Documentation is awful (though some of the Mambo documentation presumably still applies). However, found a page with an overview of the concepts within Joomla!:
Seems to have a fairly clean design, but some odd concepts (e.g., ‘pages’ don’t really exist).
Very comprehensive, but apparently quite complex. Well documented (includes downloadable manuals). The documentation claims that it will take a while to become proficient with it. It boasts its own scripting language.
Seems really well suited to complex CMS requirements. Includes versioning, and content staging. A little advanced for my requirements, though apparently well-suited to large or complex sites.
For this project, on balance, I decided to go with Drupal. It won out on having (based on my quick survey):
- Simple interface and straightfoward concepts.
- Good and very thorough documentation.
- Decent standards support and easy templating.
- Feature-wise, everything the client requires for their website.
As a post-script, I should perhaps explain why I didn’t include WordPress in my short-list, given that this site is based on it. Briefly, WordPress’s focus is on blogging, and this project was for an informational site, not a blog. I’m sure I could have bent WordPress to the task, but it did not seem a natural fit.