|Publishing year||April 28, 2004|
|Current version||Evolution 1.2.1 / Revolution 2.7
(Evolution: January 11, 2017
Revolution: November 27, 2018)
|operating system||Apache or IIS , PHP from 5.1.1+ (except 5.1.6 / 5.2.0), MySQL from 4.1.2+ (except 5.0.51)|
|category||Content management framework|
MODX is a free content management framework (CMF) for creating websites . It is originally based on the CMS Etomite and was in its first version a mod of this system, from which the name MODX is derived.
In November 2007, MODX was named the most promising CMS of the year by Packt Publishing . In 2010 it received third place in the CMS category at the Open Source Awards, also organized by Packt Publishing . The aim of the developers is a content management framework with an object-oriented core that allows web designers a high degree of flexibility and enables the use of the latest AJAX and Web 2.0 technologies.
For this purpose, the framework core based on the newly developed ORB library OpenExpedio (a free extension of the database abstraction level PDO ) has now been completely rewritten compared to its predecessor Etomite.
MODX is under GPL and is available free of charge, meanwhile paid support is also offered.
MODX is characterized above all by its adaptability and flexibility. In the example installation of the Evolution 1.0.7 version it can be configured with the extensions ( plug-ins ) for the most important CMS functions - Wayfinder, eForm, Weblogin, AjaxSearch, Breadcrumbs, Ditto and Jot. However, these are also interchangeable or can be left out entirely as desired. In contrast to some other CMS, the parameters of these applications do not have to be specified centrally and therefore uniformly for all documents created with them, but can be set differently in each document.
MODX strictly follows the Model View Controller paradigm , which is particularly interesting for developers.
The system can be flexibly adapted for users so that even inexperienced editors can manage content easily, safely and quickly.
Templates, template variables, snippets and chunks
The page design in MODX is based on templates that specify the structure and placement of the content of documents. The number of templates is unlimited. If necessary, an individual template can be assigned to each document.
Templates can be designed freely and in accordance with W3C . The entire HTML code of a page can be freely defined. Dynamic content elements and navigation structures are integrated into the templates using placeholder notation. A distinction is made between template variables , snippets and chunks .
Template variables are linked to one or more templates when they are created. If a new document is created in the backend, these variables can be used via the link between template ↔ template variable in the backend in the editing mask of the respective document. Template variables can either be written directly into the template or placed directly in the content by the editor.
Chunks are static HTML fragments (comparable to a text module in word processing) that can be integrated into templates or documents using placeholders. The most important task of chunks is not to have to write the entire HTML code of a page in a template, but to separate out recurring elements (e.g. a copyright notice, an address, a further link) that are used in different templates . On the one hand, this allows new templates to be put together from existing chunk modules without having to recreate the entire HTML code, on the other hand, chunks allow a module used in several templates to be changed at a central point without having to edit all templates or documents individually. Chunks can contain template variables, plug-in calls and link placeholders as content elements and can therefore be made dynamic. Chunks cannot contain PHP!
Snippets are also integrated into templates and documents using placeholders, but differ from chunks in that they are not static HTML fragments, but contain their own program logic based on the PHP programming language and can access the database. This makes them the most flexible template elements.
The interaction of template variables, chunks and snippets, when used correctly, ensures the strict separation of HTML code, content and program logic and ensures that the system is extremely flexible and expandable. MODX is therefore sometimes not referred to as a content management system, but as a content management framework. Knowledge of HTML / CSS and programming knowledge in the PHP language for the development of snippets are, however, required in order to use the full potential of the system.
Plug-ins and modules
Unlike some other content management systems, only extensions to the backend functionality are referred to as plug-ins in MODX. They are based on PHP source code and are executed on the basis of defined system events. For example, the WYSIWYG editor TinyMCE included in the basic installation is a plug-in. Modules are also extensions of the backend functionality, but are not executed by system events, but are integrated largely independently of the core system. There are different modules, e.g. B. to create several documents in one step or to import and export data.
MODX has not yet been the target of systematic attacks. However, due to known vulnerabilities, users should always upgrade to the latest version.
A new release version for MODX has been available since July 22nd, 2014 with MODX Revolution (version number: MODX Revolution 2.3.1-pl). The previously managed development strand with the current version number 1.0.14 (June 5, 2014) was also renamed MODX Evolution . MODX Revolution is a fundamentally new development, for which more snippets are now available than for MODX Evolution. Two alternative versions are available for productive use.
Special features of MODX Revolution
- object-oriented core based on OpenExpedio (xPDO)
- object-oriented and more consistent API
- new manager based on Smarty , Ext (1.0) and MooTools
- more flexible installation and updates
- simplified expansion through a package management (Package Manager)
- unified role model
- improved internationalization
- Concept of contexts
- Oliver Haase-Lobinger: Flexible niche. Manage website with MODX . In: c't . No. 16 , 2011, p. 164 .
- MODX website (english)
- German-language MODX Community Website (German)
- MODX Online Reference (English)
- MODX Germany Forum (German)
- German-language MODx Wiki (outdated content in German and English)
- Download MODX Revolution. In: modx.com. Retrieved January 17, 2019 .
- The modx Open Source Project on Open Hub: Languages Page . In: Open Hub . (accessed October 18, 2018).
- MODx Wins Most Promising Open Source CMS. In: www.packtpub.com. November 1, 2007, archived from the original on July 1, 2014 ; accessed on November 25, 2016 .
- 2010 Open Source Awards. In: www.packtpub.com. Archived from the original on December 30, 2010 ; accessed on November 25, 2016 .
- Jason Coward: xPDO | Object Relational Bridge Framework for PHP. In: xpdo.org. Retrieved November 25, 2016 .
- Roadmap - Revolution - MODX Issue Tracker. In: bugs.modx.com. Archived from the original on March 4, 2016 ; accessed on November 25, 2016 .