є постійним для різних документів, що мають один шаблон.
Простий приклад використання TV - дата створення запису в блозі. Кожна запис у блозі виводиться по одному і тому ж шаблону, але рядок з датою у кожної записи буде своя.
Важливо розуміти, що у кожного ресурсу в MODX є набір стандартних полів, які зберігаються в базі даних. Будь-яке з цих полів може бути незаповненим, але при цьому воно існує. Механізм TV дозволяє створювати для документа (ресурсу) необмежену кількість додаткових полів, при цьому не вносячи зміни в структуру бази даних.
Прив'язка TV при їх створенні здійснюється не до документа, а до шаблону (тому вони і називаються змінними шаблону). Завдяки цьому, можна створити TV один раз і користуватися цієї змінної для будь-якого документа.
Щоб вивести значення TV в шаблоні використовуються такі конструкції:
[[* назва TV]]
Сніппет - з Амая потужна сутність у MODX. Саме наявність сніпетів дозволяє створювати дуже складні сайти, взагалі не знаючи PHP.
По суті сниппет - це деяка функція, написана на php. Усередині ця функція може бути влаштована як завгодно складно, головне, що від неї вимагається - або сформувати певний висновок на сторінці сайту, або проробити якісь дії по обробці, збереженню або видаленню яких-небудь даних.
Щоб можна було керувати діями сниппета, не вносячи зміни в код (!), кожен сниппет викликається в MODX з набором параметрів. У залежності від значень цих параметрів сниппет може змінювати свою поведінку в широких межах.
Конструкції для виклику сниппета на сторінці виглядають однаково в обох гілках:
[[названіе_сніппета]] - виклик без параметрів
[[названіе_сніппета? amp; param1=`знач1` amp; paramN =` значN`]] - виклик з параметрами
Однак, конструкції вище призначені для т. зв. кешироваться виклику сніпетів. У цьому варіанті після виконання сниппета результат його роботи (код або текст, який поверне php функція) буде збережений в кеші MODX. Така поведінка не завжди бажано. Тому виклик сниппета може бути некешірованним. Такий виклик нічим не відрізняється від звичайного, але php код сниппета буде виконуватися завжди, навіть якщо решті код на сторінці вже сформований і закешируваний в MODX.
Некешіруемие виклики сніпетів виглядають так:
[[! названіе_сніппета]]
Якщо завдання сниппета - вивести якийсь текст або частину HTML сторінки, то одним з параметрів, як правило, є чанк з шаблоном виведення сниппета.
Плагін в MODX - це php код, який виконується при настанні певних подій. Цей код неможливо викликати в шаблонах, при створенні плагіна вказується одне або кілька з передвстановлених подій, до яких прив'язаний даний код. Таким чином, плагіни розширюють функціонал самого ядра MODX, дозволяючи не вносити зміни в код системних файлів MODX.
Прикладами подій можуть бути ініціалізація парсера MODX, збереження форми редагування ресурсу в адмінці, подія сторінка не знайдена .
Компонент. Являє собою повністю самостійне веб-додаток, який виконується в адмінпанелі MODX. Функціонал, оформлення, назва - можуть бути будь-якими. MODX надає лише місце в меню менеджера для компонента, все інше він робить сам. Встановлюються компоненти через Управління доповненнями (знаходиться в меню менеджера) викачувавши з репозиторію доповнень.
Плейсхолдери. Це конструкції, які повинні бути заміщені значеннями, коли сторінка буде відправлена ??в браузер. Плейсхолдери можуть замінюватися на необхідні значення самим парсером MODX або ж одним з сніпетів. Коли сторінка буде готова до відправки в браузер, все незамінені плейсхолдери будуть вирізані парсером MODX. Синтаксис
[[+ назва]]
Стандартні поля документа. Для стандартних полів документа в шаблоні використовується той же синтаксис, що і для виведення значень TV.
Синтаксис:
[[* назва]]
Системні налаштування MODX має велику кількість налаштувань, які визначають поведінку ядра і парсера, впливають на відображення URL, дат, мов та ін. Самою часто використовуваної системної налаштуванням можна вважати назву сайту. Для виведення значень з конфігурації передбачені наступні конструкції.
[[++ system_setting]]
Налагодження теги. Використовуються для виведення часу виконання скриптів або кількості запитів. Синтаксис:
[^ q ^] - кількість запитів в БД
[^ t ^] - час ген...