CMS Week logoWhen you take a "forty-thousand feet" look at the open-source CMS products, you can rapidly identify two big categories. On one side, you find the lightweight and the middle-class clients with the basic content management features that will satisfy 90% of the users. On the other side, you find some heavy contenders, loaded with tons of functionalities and enough horsepower to fuel a large corporation's information framework. Today's candidate, CMS made simple (CMSMS, in short), belongs to the first category, and does its job pretty well.

What is CMS made simple?

CMS made simple logoThere are tons of content management systems out there, but they are basically all the same. Other CMS systems are great if you have a lot of news or articles on your site, but what if your site content doesn't change a lot, or only small parts of it change? Doesn't make a lot of sense to create a new entry in your blog style site just for a simple update, and what's the point of having time stamped blog entries if you are constantly updating them? Here comes CMSMS.

CMSMS is a CMS (obviously!) packed with a nice set of essential features. It has an easy-to-use administration user interface and a flexible content management engine. It's extremely customizable, it relies on PHP/MySQL and it's GPL'ed as always.

CMSMS lets you update your pages and keep the content on a static page that will not become stale regardless of how much other content gets placed on your site, unlike a blog style site where entries get pushed off the page and your users have to check the archives or know an obscure link to get to the original story.

What's in CMS made simple?

CMSMS won't power your multi-billion multinational company — and it doesn't have that ambition. It is clearly shaped to serve small and mid-sized businesses and communities, and does it well. In fact, CMSMS hits a sweet spot by working wonderfully for "average" website. The system makes it very easy to add and manage content — and that's what most sites need, not useless forums or elaborate categories classifications.

With CMSMS, it's a child's play to add daughter pages to any page, and display them in the menu. By default, it does it two layers deep, but it can do more. It has a news module to promote new content and allows multiple users with different profiles to contribute on feeding your website.

CMS made simple » Default website setup

CMSMS is easy to install. There's a wizard that guides you through the setup — the traditional 4-steps process of checking requirements, entering the admin details, typing in the database specs and letting the wizard initialize the necessary environment. One little remark, though: like with TextPattern, you're required to manually create a config.php file in the root directory. We haven't tried to run the wizard without creating the file, but that's clearly a bad point. That said, the installation is fast and straightforward. And when it's done, you have the choice to go directly to the module manager in the admin interface to install additional extensions — but we'll get back to that later.



The admin interface is one of the nicest we've seen. Not only it's clear and comprehensive, but it's also skinnable. And even if that sounds like a gadget, believe us, it's a great feature. When you think that the admin interface is the part of your site where'll you'll probably spend the most of your time, it's an added value to work with something well organized and nice to look at! In the screenshots we provide below, we have installed a skin called "Zura Simple Theme" that offers a great visual and functional environment.

The admin interface features are split in 6 groups: Content, Layout, Users & Groups, Extensions, Site Admin and Preferences. Each group gives access to a number of options that allow you to perform all the necessary things to manage your content, your assets and your extensions.

Extensions are called "Modules" in CMSMS' taxonomy. The module manager itself is a fine piece of art, since it fetches an up-to-date list of all the existing available extensions each time you access the option. From that list, you can get more info about a given module, or choose to install it — and that requires just a click. Hard to do easier than that! Once installed, the module will be available from the option group it belongs to. For example, if you choose to install a module that lets you build image galleries, you will find it in the "Content" option group once it's installed.

There are modules for nearly every purpose: image galleries (we just mentioned that), interface with PayPal or other e-Commerce solutions, enhanced stats, Google Maps, blogging engines, AJAX APIs, DB tools, … You name it, you have it. And since all it takes to create your own module is to know how to program in PHP, there's pretty much no limit to what you can do with CMSMS.

The same goes for themes and templates. Serving the content relies on three elements: first, a template that describes the document layout (how the navigation, the content and the various other blocks are placed, for example a left menu with one column or a top navigation bar with full-width content); second, a CSS stylesheet that defines the visual appearance of the various elements described in the template; finally, a menu, that links the different pieces together. You can change these building blocks one by one, or you can group them into a theme. That way of structuring the visual aspect of your site results in an unusual flexibility, since you can assign a different template and/or stylesheet to every page of your website.

Another particular feature is what CMSMS calls "tags". CMSMS-flavored tags are not keywords you insert into posts or articles to improve search-engine friendliness. Rather than that, you should consider those tags as short snippets of code, that can be re-used anywhere within your site, in pages, content blocks or templates. There are two types of tags: the built-in tags that come with the package, and the user-defined tags that let you create your own collection of personal custom tags.

Those tags are reused in your website by identifying them with a specific markup, which mainly consists of surrounding the tags with a pair of { … }. Here's a couple of typical tags:

{breadcrumbs starttext='You are here'
   root='Home' delimiter='»'}
{menu template='simple_navigation.tpl' collapse='1'}
{news number='3' detailpage='news'}

Creating your own custom tags can be done through once again through PHP programming. For example, here's an user-defined tag that will display a customized copyright message:

$startCopyRight='2008';
if(date('Y') == $startCopyRight) {
    echo $startCopyRight;
} else {
    echo $startCopyRight.'-'.date('Y');
}

You can also automate a lot of features, like notify a group of users that a specific page has been updated. To do this, you'll rely on the Event Manager. This tool allows user-defined tags or modules to handle events triggered by other tags or modules. In the case we've just highlighted, a "send e-mail" module would be fired once the "I've been edited" event of a given page has been triggered. Once again, this opens the door to an unlimited number of possibilities. You can for example use it to perform scheduled DB maintenance when there's nobody visiting, or notifying an user group that a new member has joined their group.

Speaking about users, CMSMS has a nice set of features there too. You can create an unlimited number of users or user groups, define permissions for these users groups and then assign users to user groups. Simple and straightforward, once again. The system, however, won't make any distinction between web users and admin users.

The remaining admin option groups let you define the website global settings, general meta, page defaults, user preferences and user-defined shortcuts.

CMS made simple » Admin - Login form CMS made simple » Admin - Main menu CMS made simple » Admin - Content menu
CMS made simple » Admin - Extensions menu CMS made simple » Admin - Modules CMS made simple » Admin - Tags
CMS made simple » Admin - Module manager CMS made simple » Admin - Configure extensions CMS made simple » Admin - Global settings
CMS made simple » Admin - Admin log CMS made simple » Admin - Group permissions CMS made simple » Admin - File manager

What else could we add? CMSMS outputs 100% W3C-compliant code, is search-engine friendly, includes a WYSIWYG editor based on TinyMCE, features a simple but effective assets manager for images, documents and other files, and benefits from a solid community support.

Main features

  • Easy user and group management
  • Group-based permission system
  • Intelligent caching mechanism to only get what is necessary from the database
  • Full template support, for unlimted looks without changing a line of content
  • Easy wizard based install and upgrade procedures
  • Minimal requirements
  • Admin panel with multiple language support
  • Integrated WYSIWYG editor
  • Content hierarchy with unlimited depth and size
  • Optional self-generating menus
  • Integrated file manager w/ upload capabilities
  • Module API for unlimited expandability
  • Integrated audit log
  • Included News & RSS modules
  • Ability to program simple PHP coded plug-ins right inside the admin
  • Friendly support in forums and IRC

Strengths

  • Intuitive admin interface
  • Incredibly flexible theme engine
  • Huge extensibility through modules and tags

Weaknesses

  • Limited horsepower won't make it suitable for large projects
  • Lack of quality documentation
  • Requires PHP programming skills to be fully exploited

Conclusion

Amongst the various mid-class solutions we've reviewed so far, CMSMS emerges as one of our favorites. It may not have the reputation of Joomla! or Drupal, or the richness of Typo3 or Plone, but it's definitely an excellent platform to manage your average website, when you find out that Dreamweaver isn't capable of following you anymore. Furthermore, using it is an excellent initiation to the concept of Content Management, and will help you streamline the way you organize and deal with your data. So all in one, clearly a winner!

Links

» Download CMS made simple
» CMS made simple website
» Documentation
» Themes, modules and tags
» Community forums