Модификаторы в MODX — это довольно удобная штука, которая позволит Вам выполнять определенные логические преобразования с плэйсхолдерами, дополнительными полями, не вызывая неудобную конструкцию сниппета с параметром. В статье приведены несколько модификаторов Modx Revo и показано, как самим создать модификатор под свои нужды.
Возможность применять фильтры существует благодаря сниппету PHx, который по умолчанию встроен в ядро MODX Revolution, в случае с Evolution — Вам необходимо будет устанавливать его отдельно.
Синтаксис фильтров выглядит следующим образом:
[[element:modifier='value']]
Также, из них можно выстраивать цепочки условий:
[[element:modifier:anothermodifier='value':andanothermodifier:yetanother='value2']]
Дабы не дублировать стандартную информацию, оставлю ссылку на страницу в официальной документации, там все расписано очень подробно и хорошо.
Идем дальше…
Как создать собственный модификатор?
Очень просто. Нам нужно создать сниппет с входным параметром $input
и вернуть из него некий результат.
Создадим модификатор, возвращающий входную строку с «Hello, » в начале. Создадим сниппет с названием hello_user
и следующим содержанием:
return 'Hello, '.$input.'!';
Применение модификатора выведет нам «Hello, admin!»
[[+modx.user.username:hello_user]]
Все. Думаю, даная заметка обязательно кому-то будет полезна.