Setting sail on the content management sea? Well here’s a navigational chart that’ll help avoid the ragged rocks and hidden shoals. Don’t leave shore without it!
Being adept in your profession means you have an understanding of all the components, aspects and tasks that need to be created and performed to achieve something that satisfies the business requirements. While the layperson, having no understanding of this, imagines it to be a simple arrangement, not needing much to be done. And so it is with web content management systems. The client imagines a simple website where they can publish this or that for people to read. With some pictures. With a preview. That can be edited. By various people in the organisation. With the edits tracked. And allow users to comment. While being able to roll back to previous versions. And create additional pages. In Spanish and in English.
Heard this before? Well the more you know the more you can set your client’s expectations. Educate them as to what their idea of a simple website actually involves. Or if you’re doing this for yourself then you’re going to have to find all this out one way or another. Below is a high-level overview of CMS’ and also a couple of examples.
First thing that needs to be done is to get an idea of the range of functionality that is required. Here’s a brief list of typical functionality as a starting point:
- Multilingual
- Delegation, permissions
- Roll-back, versioning
- User generated content
- Asset management
- Templates for new pages
- Meta-data management
- WYSIWYG Preview
- Workflow management
- Design and layout
- Extensibility
- End use
Know Your Requirements!
Knowing in advance what the CMS is going to be used for is critical to selecting the correct one. And the use of content on the web is extraordinarily varied. Consequently so are the content management systems that are out there. Let’s start with some simpler ones.
There are two main types of website. Most larger websites are dynamic websites where, after receiving a request from a user, generate the HTML on the fly. For these you need to have your CMS embedded on the server side. But simpler websites, ones that have static HTML documents can have their content managed by much simpler CMS’. And some of the simplest CMS’ out there are entirely web based.
Web Based Options
By web based CMS I mean there is nothing to install on the server and next to nothing that needs to be done with the HTML. You simply give the remote CMS application read/write access to your static HTML pages. The remote CMS application then reads in your pages and gives you back a web based interface that allows you to make changes. The remote CMS application then uploads the revised pages back to your server. And they key thing here is that there is literally nothing to install on your server. Examples of this type of CMS is TypeRoom and Cushy CMS.
Cushy CMS
TypeRoom
These simple CMS packages are very light on functionality and are not very extensible. Many would barely rate them as a CMS. But for when your requirements really are just to be able to make simple typographical changes and put up a picture, then these web-based CMS’ are a godsend. Especially if you have a non-technical client.
Need More ‘Oomph’?
Content management for dynamic sites is an entirely different kettle of fish. For these you have to install something on the server that works in unison with your web and database applications. For simple sites you can sidestep the database requirement, for example by using CMSimple, which in effect has its own database built in, but make sure you’re not going to need a proper database down the track.
CMSimple
If your requirements ask for a proper database, and serious management functionality then you’re going to have to look at the bigger systems. The most common of these are the PHP/MySQL packages such as MODx, TextPattern or SilverStripe. But there are others based on other languages, such as Radiant CMS based on Ruby. These packages use mark-up languages, such as Textile, to give excellent layout and design functionality. A port of Radiant to PHP resulted in Frog CMS which has become an independent CMS in it’s own right.
MODx
SilverStripe
Radiant CMS
Frog CMS
Often the package you select depends on externally imposed technical restrictions. For example a client may have technical staff with expertise in PHP. Or they already have MySQL as the database. After that though the next thing that’s going to dictate the selection of CMS is the end use application. A lot of websites these days are blogging websites, and their requirements are limited to that specialisation. Packages like WordPress and Moveable Type are essentially blogging CMS’, although they can often be extensible and cover other functionality. WordPress is a classic example of a popular CMS where add-ons have allowed it to cover a wide range of content management applications.
WordPress
Moveable Type
Packages such as Radiant and SilverStripe are aimed more at web-publishing content management that blogging. Radiant is an example of a mature CMS with extensive third-party tools and add-ons that make it suitable as the underlying technology for a large scale web-design business.
How About an All-in-One Solution?
Another solution worth looking into is a combined hosting and CMS service. These take everything away from you and you don’t have to worry about anything too technical. Of course you don’t have much control either. UCoz is an example of one such service. There are similar services blogging, such as Tumblr. With these full service solutions you don’t get low level access to the servers. So no server side scripting or sophisticated database management.
UCoz
Tumblr
As can be seen from the above discussion, there are many aspects that influence the choice of content management system. Some are within your control, and some are not. But if you have grasp of all of these aspects it means that you can set your client’s expectations accurately and early, or if you are the client, it means you can temper your requirements with a little realism.