news

MODX Evolution 1.2

The community-based MODX Evolution team has released Evolution 1.2. It closes a significant set of vulnerabilities that exist in every version prior to 1.2. It also brings forward many new features and improvements that there’s just far too many to mention in this brief introduction. In fact, there are more than 1200 commits to this release of MODX Evolution, making it the biggest release to date.

This is release includes critical security enhancements and should be considered a mandatory upgrade.

Download Evolution Upgrade Instructions Install Instructions

Highlights Evo 1.2

Here are some highlights of MODX Evolution 1.2:

  • Corrected issue allowing Evolution sites to be compromised using several Extras
  • Updated TinyMCE in the Manager to 4.0 which includes new themes and more
  • New default Manager theme called MODxRE2
  • Changes to the Resource Tree, providing quick access to Elements, Files and etc.
  • New start page on new installs based on Bootstrap 3
  • New Output Modifiers in the core, including conditionals
  • New Manager User roles for better, more granular access for site administrators
  • Language overrides in the Manager
  • Upgrade jQuery in Manager
  • For a list of all of the changes in Evolution 1.2 read the changelog

Upgrading Is Critical

We cannot stress the importance of diligently upgrading to the latest version of MODX enough. While no software is 100% secure, powering your site with the most current version usually helps protect you from hackers that rely on exploiting outdated software. If you’re not sure what version of MODX Evolution you’re running, login to your website Manager and it should be in the upper right hand corner—possibly left, if extremely old.

If you need help upgrading your site, please contact your website builder, find a MODX Professional or get in touch with MODX Support.

MODX Evolution 1.2 was developed, managed and released by the dedicated team of community members, shown in order by number of contributions.

  • Mananori Yamamoto (yama)
  • Dennis Helfensteller (Deesen)
  • Nicola Lambathakis (Nicola1971)
  • Dmytro Lukianenko (Dmi3yy)
  • Piotr Matysiak (pmfx)
  • Sergey Davydov (MrSwed)
  • (bossloper)
  • fourroses666, Fr3ddy7, mcparana, amaksymiuk, vhollo, poh-am, ricardo-lewis, typhoon2099, esszett, Jako

The MODX Evolution team would like to send a special thanks to all translators and testers!

Download Evo 1.2:

You can download the latest version of MODX Evo from the following sources:

Install, Upgrade and More Links

For those users who are interested in using Evo, but are unsure where to begin:

New Features and Changes

General

  • New default Theme MODxRE2
  • TinyMCE4 is now default richtext-editor, featuring
    • custom themes (every TinyMCE parameter can now be set)
    • turning introtext into richtext-editor
    • different themes per Richtext-TV
    • frontpage inline-editing
    • improved custom-parameters
  • Revised lock-mechanism for locking multiple resources and elements when editing

New Starter-Template based on Bootstrap3

demo-tpl

Resource-Tree

Moved “Sort menuindex” from DocManager to Resource-tree (modxcms/evolution#618, modxcms/evolution#636)

  • Sort Resources in Root: Click Button “Sort menu index” on top of resource-tree
  • Sort Resources of Parent Resource: Right mouse-click on parent, then choose “Sort menu index”

New “Manage Elements” Buttons (modxcms/evolution#669)
You can quick-access elements, files and images now directly from ressource-tree. Use Shift-Mouseclick to open multiple windows/elements. Permission is granted using new roles “assets_images” and “assets_files”.

Remember last sort-options (modxcms/evolution#618, modxcms/evolution#636)
The ressource-tree stores now the last set sort-options per user to database (Sort by, Asc/Desc, Display-Name). At manager log-in, last settings of each user get restored.

New plugin “ElementsInTree” v1.2.0 (github.com/pmfx)
This plugin has been added to default installation. Use Shift-Mouseclick to collapse/expand all categories. Collapsed states per category will be remembered via browser´s localStorage.

MODX Tags

New Modifiers/Filters in Core (PHx)
Can be disabled in MODX-configuration. More information at modxcms/evolution#623

Snippet - Shortcut param = true

[[snippetName?param1&param2]]

will automatically be handled as:

[[snippetName?param1=`1`&param2=`1`]]

while param=`` will still be handled as empty value.

Output value of $_GET, $_POST, $_COOKIE, $_SERVER, $_SESSION

[!$_SERVER['REQUEST_TIME']:dateFormat='Y'!]

New Conditional Tags <@IF>, <@ELSEIF>, <@ELSE>, <@ENDIF> and Modifiers

Can be enabled/disabled via Configuration -> “Enable Filters”. More examples at modxcms/evolution#622 and modxcms/evolution#623. Performance is good because it does not parse the block which is judged false. Example:

[*longtitle:ifempty=[*pagetitle*]*]  

<@IF:[*id:is('[(site_start)]')*]>
Top page
<@ELSE>
Sub page
<@ENDIF>

In combination with $_GET :

<@IF:[!$_GET['value']:preg('/^[0-9]+$/')!]>
Value is numeric.
<@ELSE>
Value is not numeric.
<@ENDIF>

UltimateParent

[[UltimateParent:is=`8`:then=`8`:else=`11`]]

<@IF:[[UltimateParent:is=8]]>
8
<@ELSE>
11
<@ENDIF>

Combination with Cross-references (modxcms/evolution@956c9ae)

<@IF:[*id@ultimateparent:is=8*]>
8
<@ELSE>
11
<@ENDIF>

New Comment Tag
Comment-Tags will be completely removed from output. More information at modxcms/evolution#680. Example:

<!--@- This is a comment -@-->
<@- Or HTML-Code / Snippets etc you want to disable temporarily -@-->

New Chunk Parameters
It is possible to pass properties/values to a chunk. More information at modxcms/evolution#625. Example:

Chunk:

<h1>[+title+]</h1>
<p>[+body+]</p>

Call:

{{chunkName? &title='First post' &body='Hello World!'}}

File-binded Templates via @INCLUDE
Templates can be included via @INCLUDE using external PHP- & HTML-files. More information at modxcms/evolution#627. Examples:

HTML Template:

@INCLUDE:assets/templates/mydesign/template.html

PHP Template:

@INCLUDE:assets/templates/mydesign/template.inc.php

template.inc.php :

switch($modx->documentIdentifier) {
    case $modx->config['site_start']:
        return file_get_contents('assets/templates/mydesign/top.html');
    default:
        return file_get_contents('assets/templates/mydesign/page.html');
}

Snippet-calls improved and supporting Modifiers

[[snippetName]]

[[snippet Name]]

[[snippetName?param=`value`]]

[[snippet Name?param=`value`]]

[[snippetName? &param=`value`]]

[[snippetName ? &param=`value`]]

[[snippetName &param=`value`]]

[[snippetName?
    &param=`value`
]]

[[snippetName
    &param=`value`
]]

[[snippet Name?
    &param=`value`
]]

[[snippetName?param]]

[[snippetName:modifier]]

[[snippetName:modifier?param=`value`]]

[[snippetName:modifier ?
    &param=`value`
]]

[[snippetName:modifier
    &param=`value`
]]

[[snippetName:modifier=`option`
    &param=`value`
]]

[[snippetName:modifier(option)
    &param=`value`
]]

[[snippetName:modifier('option')
    &param=`value`
]]

[[snippetName:modifier("option")
    &param=`value`
]]

[[snippetName:modifier(`option`)
    &param=`value`
]]

Wayfinder Debug-Mode
More information at modxcms/evolution#719

[[Wayfinder?debug]]

New Manager Roles

change_resourcetype
A user with this permission can change resource-type (webpage/weblink). More information at modxcms/evolution#531

assets_images, assets_files
Controls the display of 2 new buttons in resource-tree and grants/blocks access to KCFinder. More information at modxcms/evolution#681

display_locks
This permission control the display of locks inside resource-tree. When having permission “remove_locks”, locks can be released by a single click.

Template-Variables

@BINDINGS providing TV-values
[*tv_name*] will be replaced by its value taken from actual resource. Beware of SQL-Errors in case no or wrong value is given (set a reasonable default-value to avoid errors). More information at modxcms/evolution#699. Example:

@SELECT name,value FROM xxx WHERE yyy = [*tv_name*]

Language Overrides

Can be implemented by adding files to /manager/includes/lang/override/. Files in this directory will never get altered by future updates.

Other Important Details for Developers

  • jQuery updated to v3.1 and loaded into manager by default.
  • Known issues: MultiTV 2.0.8 has problems with row-reordering and requires an update. Meanwhile a workaround can be found at https://github.com/Jako/multiTV/issues/163#issuecomment-244657339

Hi. We’re MODX.

We’re here to help you fix, build and grow fantastic sites. How can we help?




How can we help?

Tell us the general reason for reaching out so we can connect you with the right team.

MODX Diagnostics

MODX’s Open Source software is 100% free for anyone to download and use. As the team behind it for more than a decade, we know it inside, out, and then some.

Like any software, sometimes things break; we can usually fix them very fast. But, we do have to charge for our time to support our families and fund its ongoing development. There are almost an unlimited variety of things that can cause problems, including server upgrades, corrupt files, accidental changes, outdated software, database hiccups and more. We will save you a lot of time and frustration, and get you back in action.

With our MODX Diagnostic service, we determine the source of issues, and often fix them on the spot. For more extensive problems needing more time, like hacked sites or overdue upgrades, we provide additional estimates and guidance. MODX Diagnostics cost $99 for standard business hours support (US Central Time), or $500 for priority, rush or after-hours emergencies.

If you don’t have budget for professional support from the source, you look for answers in the MODX Forums or Documentation, or seek help from MODXers in the Community Slack, or from MODX Professionals near you.

  I’m not ready to pay, let’s talk…

After submitting this form and completing payment, we will collect your access credentials in a secure support ticket. We look forward to helping restore your site back to full health.

Hi! We’d love to work together.

If you have a simple problem that needs our assistance, please request quick fix help here.

What should we keep in mind?

The project involves:
(select all that apply)
What are you planning?
(select all that apply)

Some other considerations

Specific project information

Commercial Support Customers

Customers with a current Commercial Support agreeement can get help using this form. Learn more about MODX Preferred Support.

Let’s get started

What seems to be the issue?

Contact MODX

We welcome conversations, ideas, inquiries and even the occassional cold sales call, but support and requests about how to use MODX software sent via this form cannot be guaranteed a response. That said, we try to respond to everyone that reaches out to us within two business days.

To report a security issue or file a bug for MODX software, please email security [at] modx.com to reach our security team. If you are looking for help with MODX, many times you can find an answer in the MODX Forums or MODX Documentation, from MODXers in realtime at the MODX Community Slack Channel, or from a MODX Professional near you.

How can we help?