In preparation for an upcoming presentation for WordCamp Albuquerque, I’ve been doing some thinking about what makes a good content management system. I’ve was involved with providing content management systems for 6-7 years before I started using WordPress, so my perspective is not limited to my WordPress experience. I started using WordPress with some pretty high expectations about what a CMS should do, and I’ve been impressed with its ability to meet or surpass those expectations as I’ve learned more about how to configure it as a CMS.
This is not a feature comparison with other CMS platforms. Instead, I’m thinking about what the basic requirements for a CMS are, and what it takes for a CMS to be a good one. And there are only two kinds of CMS’s, from an end-user perspective: “good” or “bad.” Thinking about that inevitably leads to thinking about what kind of people use CMS’s (the “end users”), so I’ll start with them.
The people who update the company website don’t care what flavor the CMS is.
Typically, CMS users don’t maintain the website because they love websites. They maintain the website because it’s part of their job. For the most part, they want to make an update quickly and easily, and then go on to more important things. They don’t care if the CMS is WordPress, Joomla, Drupal or some other flavor, as long as it makes their work easier and quicker, and doesn’t get in their way. This may seem obvious, but I know from experience that a lot of developers don’t give this any thought.
Ease-of-use is not negotiable.
Complicated, confusing user interfaces are productivity killers. They can be a mere annoyance or an actual obstruction to keeping the website updated. When updating the website is difficult, the normal and usual end result is that the website does not get updated. And at that point, its value as a business and communication tool is non-existent. WordPress is famous for its ease-of-use and friendly user interface, consistently ranking ahead of other platforms in this regard.
The need for HTML coding must be minimized or eliminated.
This is actually an ease-of-use issue for most end users, but I think it deserves special mention. Straight out of the box, WordPress flunks this test. If all editing and formatting must be done in the WordPress editor, a good working knowledge of HTML (and possibly some CSS) is mandatory. But in the hands of a good developer, WordPress can excel in making HTML coding either optional or completely unnecessary.
Flexibility is critical.
Although there are some things most businesses and organizations need in a website, many of them also have some unique needs. A good CMS must be able to accommodate these needs without extensive and expensive development, while maintaining ease-of-use for the end user. With custom fields, custom post types, and custom taxonomies, WordPress is one of the most flexible platforms around.
The CMS platform must be well-supported.
Business users will not gamble on a system with an uncertain future or inadequate technical support, and why should they? In most cases, of course, the level of support an end user gets is dependent on the developer who implemented their website. But that developer can draw on the WordPress community when necessary. WordPress is the most widely used open-source CMS platform in the world by a very wide (and accelerating) margin. It has a large, committed developer base, in addition to the core development team. If there is a better bet than WordPress in terms of longevity, I’ve not heard of it.
Getting assistance as a developer from the WordPress community is practically standard procedure. Much of what I’ve learned about WordPress comes from WordPress’ excellent online documentation, and from other developers (most of whom I’ve never met in person) who are willing to offer assistance or advice.
In addition, should the original developer fall short in website support, finding a good WordPress developer is relatively easy: they’re not rare. Owners of WordPress-based websites do not need to fear that they’ll have to redo their website on yet another platform if they wish to work with a new developer.
Did I mention ease-of-use?
I just thought it was worth mentioning one more time