MODx is an up and coming PHP/MySQL content management system that’s easy to use and has plenty of nice features. The project began in 2004 as a fork of Etomite. I’ve used it for a few projects now (not extensively) and think it works great for small sites; sites with less than ~15 pages that don’t have a lot of dynamic content. I really like the direction that MODx is headed but there are certainly some drawbacks that prevent me from using it on more of a regular basis. I thought I’d post a small list of what I believe are the current pros and cons of the system for anyone who is considering it.
- Quick loading: Unlike most CMSs, MODx doesn’t add tons of irrelevant markup to your HTML and instead of loading the skins from regular HTML files, they are loaded from the database; no clutter and database loading makes page loading very quick. The MODx wiki has a great skinning tutorial that might look a little daunting at first, but it’s really easy to follow. The CMS on the whole doesn’t seem bloated at all.
- Templating code is extremly simple to work with. I’ve had the unfortunate experience of working with the PHP Smarty template engine and I really detest it. To me, Smarty doesn’t make sense because it’s so similar to regular PHP. Why even bother? MODx template code uses “snippets” and “chunks” which you basically just plug into your normal HTML code. The following statement that is prominently displayed on the MODx home page is what really caught my attention: “Finally, go straight from XHTML/CSS/JS mockup right into the Content Management System.”
- SEO friendly out of the box. SEO optimized CMSs are the new standard and MODx definitely takes search into account. It’s very easy to set up URL rewriting, page titles and meta tags, etc.
- It’s easy for clients. The quick edit feature seems fantastic for clients. So far, most seem to be able to catch on very easily with little instruction. It’s basically just a matter of understanding whatever WYSIWYG editor you decide to implement. The default editor is Tiny but there is a plug-in for Fckeditor among others.
- Community support: The MODx forums are a great source of support. I’ve posted several questions and someone has always responded very quickly.
- User roles and permission settings are confusing and groups need to be combined. There are currently two sets of user groups: the Web Users group and the Manager Users group. So, for example, even though you have your admin account set up as a manager, the login will not work for the web login.This is extremely annoying but apparently the two main sets of groups will eventually be merged; the sooner the better I say.
- Most plug-ins should use installers and adding them to documents should be as easy as possible. Another huge drawback to MODx is that many of the plug-ins available require users to copy and paste code into snippets and chunks. As easy as that seems for a web developer, it’s going to be too confusing for regular people with little web experience. In addition, instead of directly typing chunk code into the Resource content editor, to make things as easy as possible there should be some kind of checkbox/drag-and-drop menu for adding chunks to pages.
- Blog/Article setup should be much easier. Setting up Ditto for news articles or a blog is pretty simple if you install the example website but it’s not easy enough for someone coming from something such as WordPress. Ditto also lacks features and much more work should be done with it in order for the CMS to compete with the popular blogging systems. Posting articles is really a core function that every CMS should have by default and if it lacks at all, the entire system will suffer.