Выход MODx Evolution 1.0.9

Сегодня вышел MODx Evolution 1.0.9.

Основная проблема которую решает данный релиз, это совместимость с php 5.4. Помимо исправления старых багов, добавление новых приколов которые уже давно всем были нужны. Более подробнее об изменениях можно прочитать в changelog. Хочется выделить некоторые из них.

Значительная переработка парсера:

[[SnippetA? &param1=value //можно оставлять комментарии
&param2=value &param3='value'
&param4="value" // любые кавычки или без кавычек а не только
&param5=[[SnippetB]] // нет конфликтов при вызове сниппета в сниппете
&param6=A&B=C? //используем любые символы в параметрах ]]

Появление бекап менеджера:
0d653558cf5023593693476f1d198872[1]

Добавлен Сниппет IF :
Сниппет для вывода информации по условию.
Логика работы: Если условие is выполняется, то выводим содержимое параметра then, если не выполняется, то выводим содержимое параметра else.
[[if? &is=[*id*]:=:4:or:[*parent*]:in:5,6,5,7,8,9 &then=[[if&is=0||=||0 &then=true &else=false &separator=||]] &else=@TPL:else]]
[[if? &is=[*id*]:is:1:or:[*id*]:is:2:and:[*parent*]:is:5:or:[*parent*]:in:2,3,4 &then=true &else=false]]
//Все выражения обрабатываются по логике (....:or:is:.... ) :and: (...:!empty:.....)
//выражение and делит условие на 2 части, которые в конце в конце сравниваются к true
//Операторы:
// (is,=) , (not,!=) , (>,gt) , (<,lt) , (>=,gte) , (lte,<=) , (isempty,empty) , (not_empty,!empty) // (null, is_null) , (in_array, inarray, in) , (not_in,!in) //Выводить акцию только для товаров с ценой в диапазоне >300$ <=700$ [[if? &is=[*price*]:>:300:and:[*price*]:<=:700 &then=@TPL:akcia]]

//Выводить при кратности записи дитто 3
[[if?is=[+ditto_iteration+]:%:3 &then=true &else=false]]

В ближайших планах у разработчиков версия 1.0.10

Читайте также: