Some level of Content Management is pretty much a prerequisite for all but the smallest of websites these days, but it’s amazing how little thought goes into many of them.
This isn’t a post about the technical advantages and disadvantages of bespoke vs off the shelf CMS approaches (although that does often play a part) so much as a look at how best to improve the end user experience.
Quite often, when pitching, we are asked to cost out the training requirement of our CMS, and potential clients often can’t understand what we mean when we say £0! We’ve rolled out iterations of our bespoke CMS 20 or 30 times now, and other than a one page cheat sheet we’ve never had to sit down and actually train someone to use it. In fact, just the thought of that is a bit ridiculous really - you wouldn’t ever consider designing a website that your customers had to be trained to use, and that’s effectively all a CMS is - a website that facilitates putting some content into a database in the most user friendly fashion.
So where do these requirements get lost? A web brief will often go into great detail about the content requirements and user experience, before adding a few lines stating that all this needs to be managed in a CMS. Immediately the CMS is an afterthought and the web agency will invest all of the budget in the sexy stuff on the front end...and then charge days, or even weeks of time to train staff to use a CMS that’s been designed by developers to use (I’m a developer and believe me, this isn’t often a good thing!)
So how do you make a useable CMS? Well, as everyone likes a list, here’s 5 initial suggestions - feel free to add your own in the comments.
You’re usually talking to administration staff, marketing managers and business owners - not software developers. Run a rule over every bit of language in your CMS, from the labelling of your fields to the error messages. ‘Error 116023 - invalid blah de blah’ doesn’t help to communicate that the image they have uploaded should be a jpg and not an 100MB Illustrator file.
2. Control what can be controlled
There are so many open source wysiwig plugins now that it’s easy to give the client too much control, and before you can say ‘italic comic sans’ the site can be a mess of inconsistent fonts, colours and images. Ideally you’ve already defined what body copy should look like and what sizes and aspect ratios the images should be, so all the end user really needs are a few very basic tools, eg. bullets, bolding and italics, as well as automatically cleaning up anything pasted in via MS Word. To take this a stage further we’ve developed an image upload system that helps the user upload a photo and then controls how it's cropped to the correct aspect ratio and design aesthetic. Basically, the more you can control the longer the site will look as you envisaged!
3. Remove everything that isn’t absolutely necessary
This is a particular bugbear of many ‘off the shelf’ systems. They can be very powerful, but can also completely confuse the end user with 101 functions that simply won’t ever be used. This leads to visual and mental clutter. Strip everything away that doesn’t need to be there. That might be sections, categories, buttons or just fields.
4. Make it make sense to humans not your database
It’s easy as a developer to think of the CMS as being just a GUI for the database, and then to fall into the trap of creating list and article functions that match the database structure. This might be fine in a really simple ‘blog’ type application, but with more complex database relationships it can quickly become very frustrating to use when you try to add an article, only to find that you’ve got to go into another bit of the CMS to add an option which can then be selected in the article! Think about how the user wants to input data, not how you want to store it.
5. Test and improve
Don’t assume that you’ll get all of it right first time every time. Sometimes you can build something complex that you think makes perfect sense, but then for whatever reason it’s just not as useable as you envisaged. An example of this is the continuous work we’ve done on menu content management for restaurant clients. This can get incredibly complex, with dishes being in almost infinite structures and sometimes having different prices in different locations. We’re on about version 4 of that system right now, having listened to the feedback from our clients.
So that’s just an initial top level list. We’d love to hear any other tips you’d like to share, and also your thoughts and experiences on how this fits into the bespoke / off the shelf argument. There are also some useful resources over here for how to get your business online if you're completely new to the whole thing!