Originally, this started as a translation for the french
Framasoft article.
I really ended up rewriting it from scratch, because litteral translation can’t work, french and english language are different and tone is certainly not the same. Plus, the french article is almost a year old and a bit outdated (I’ll write a new one and submit it to the editor soon).
Here it is :
MODx is not ’yet another content management system’ : it’s a modern web2.0 ready content management framework featuring a robust and flexible API allowing webdesigners to create highly customized, accessible and standard compliant dynamic websites. You might say : well that sounds nice, but what does it actually mean ?
Well, it means…
You’re free!
With MODx you have your “Get out of jail” card : you are not bound by the system the way you are by most content management applications :
- Take control of your designs!
The systems works for you, not the other way around
It’s called (real) separation between content and presentation. Remember having to hack the core code of a system, a plugin or module to get your layout and styles to work as expected, fix standard compliancy or accessibility issues? Well, forget those unnerving, annoying things. With MODx you get :
- A simple and powerful Template system: MODx doesn’t use a template engine, adding a layer of complexity and rigidity to the system. MODx uses a built-in tag language. You can use tags to display variables such as document attributes, systems settings, template variables, chunks…
- Micro-templates for granular control over content: to go one step further, MODx gives you the ability to define “micro-templates” which allow you to control precisely how and where you want to place the output of a Snippet (through what we call placeholders).
- Dynamic stylesheets: No-one would challenge the fact that dynamic web pages have brought a revolution to the web. To this date, dynamic stylesheets (a.k.a server side css) are still rare. With its flexible document types, MODx is able to parse stylesheets and allow you to add dynamic elements to your css, via tags and snippets : pretty handy to have a dynamic path for images when moving from test to production server, or randomize a background : whatever you can imagine is possible !
- Create and take advantage of your own content structure !
Forget rigid content structure 
Most systems have a rigid way to structure content. Usually, content has a limited structure: Title, Summary, Body. Extensions (plugins, modules or the likes) sometimes offer to manage different types of content (images, products, job offers…): but again, they force you to use a predefined content structure which does not necessarily fit your particular needs. When they do offer a way to create custom content fields, they are either limited in number or in types. MODx has no such limitations :
- You can create any type of custom content fields: text, rich text, number, date, images, checkbox, dropdown, email, url… with no limitations whatsoever. The best part: you can do so directly from the backend, without ever having to alter the database structure manually.
- Each custom field is linked to a given template: that’s why the custom fields are called Template Variables in MODx. It allows you to define which templates can use the custom variables, and possibly define several content structure if needed (need a product catalog ?
- You can use, style and place those content field easily: a simple tag, [*my_template_variable*], and you can display the content wherever you like, the way you want it displayed. Better yet, if you need to make it available for frontend editing, just add a # before the variable name [*#my_template_variable*]. Pretty easy, uh?
What’s the catch?
The selling pitch is nice, but what’s the catch here, looks too good to be true!
Well of course no system can be everything to everyone. Flexiblity and power has a price. Unlike most CMS, you won’t find a template installer, nor will you find a module/plugin installer. Though it’s quite fast to learn if you have a decent knowledge of website design, MODx is not a “one-click” foolproof system. Why is that?
Because being built by professionnals out of frustration with existing solutions, it naturally aims primarily professionnal webdesigners (also pro-ams – geeks – power users) who are looking for a tool to build highly customized, accessible and standard compliant dynamic websites.
Now does that mean MODx doesn’t care about the end-user? Sure not! It aims the end-user but as content managers or editors, not websites builders. Many opensource content management project have chosen to try to satisfy the end user first, focusing on the range of built-in features and one-click-install systems which in the end makes the application less flexible.
The MODx team has made a different choice, and it might be why professionnals love it so much !
(Follow up on the other things I have on my to do list this week : I’ll post the proposal for a marketing plan after I have a chance to discuss with Andreas... )