Элементы | ModX (пример) | Fenom (пример) |
---|---|---|
Поля ресурса (Resource Fields) | [[*pagetitle]] | {$_modx->resource.pagetitle} |
Переменные шаблона (Template Variables) | [[*tag]] | {$_modx->resource.tag} |
Словари (Lexicon) | [[%link_contacts]] | {$_modx->lexicon('link_contacts')} или {'link_contacts' | lexicon} |
Ссылки (links) | [[~12]] [[~[[*id]]]] |
{$_modx->makeUrl(12)} {$_modx->makeUrl($_modx->resource.id)} |
Системные настройки (System settings) | [[++access_category_enabled]] | {$_modx->config.access_category_enabled} или {'access_category_enabled' | config} или {$_modx->config['access_category_enabled']} |
Плейсхолдеры (Placeholders) | [[+image]] | {$_modx->getPlaceholder(image)} или {$image} |
Плейсхолдеры с точкой или тире | [[+tag.subtag]] | {$_pls['tag.subtag']} |
Комментарии (Comments) | [[- Это комментарий]] | {* Это комментарий *} |
Игнорирование кода с круглыми скобками | {ignore} {/ignore} | |
Чанки (Chunks) | [[$chunk]] | {$_modx->getChunk('chunk')} или {include 'chunk'} |
Сниппеты (Snippets) | [[!pdoMenu? &parents=`0` &level=`0`]] | {$_modx->runSnippet('!pdoMenu', ['parents'=>'0','level'=>'0'])} или {'!pdoMenu' | snippet:['parents'=>'0','level'=>'0']} |
Проверка авторизации пользователя | Проверка доступа к контексту | Проверка прав |
---|---|---|
{$_modx->isAuthenticated()} | {$_modx->hasSessionContext('web')} | {$_modx->hasPermission('load')} |
Массив/объект | Описание | Распечатать данные на экран |
---|---|---|
{$_modx->user} | Массив с информацией о пользователе | {$_modx->user | print_r} |
{$_modx->context} | Массив с информацией о контексте | {$_modx->context | print_r} |
{$_modx->resource} | Массив с информацией о текущем ресурсе | {$_modx->resource | print_r} |
{$_modx->lexicon} | Объект modLexicon, который можно использовать для загрузки произвольных словарей |
Функция | Описание |
---|---|
{$_modx->regClientCss('/assets/css/style.css')} | Подключение css файла |
{$_modx->regClientScript('/assets/css/script.js')} | Подключение js файла |
{$_modx->sendForward(1)} | Загрузка ресурса без изменения ссылки |
{$_modx->sendRedirect('http://modx.ru')} | Перенаправление на страницу |
{$_modx->setPlaceholder('name', 'Ivan')} | Сохранение плейсхолдера |
{$_modx->toPlaceholder('name', 'Ivan','my')} | Сохранение плейсхолдера с префиксом |
{$_modx->toPlaceholders(['city' => 'Moscow', 'man' => ['name' => 'Ivan', 'surname' => 'Ivanov']],'my')} | Предает многоуровневый массив в плейсхолдер |
{$_modx->setPlaceholders(['name' => 'Ivan', 'surname' => 'Ivanov'])} | Сохранение массива плейсхолдеров |
{$_modx->getPlaceholder('name')} | Получение значения плейсхолдера |
{$_modx->getPlaceholders()} | Получение списка плейсхолдеров |
{$_modx->unsetPlaceholder('name')} | Удаление плейсхолдера по ключу |
{$_modx->unsetPlaceholders(['name', 'surname'])} | Удаление плейсхолдера по массиву ключей |
{$_modx->regClientStartupScript('//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js')} | Добавление js файла перед закрытием тега head |
{$_modx->regClientStartupHTMLBlock('<strong>Привет мир</strong>')} | Добавление тегов перед закрытием тега head |
{$_modx->regClientHTMLBlock('<div id="footer">(c) 2009 MODx</div>')} | Добавление тегов перед закрытием тега body |
{$_modx->runProcessor('resource/update', ['id' => 10,'alias' => 'test','context_key' => 'web'])} | Запуск системного процессора |
{$_modx->hasPermission('edit_chunk')} | Возвращает true, если пользователь имеет доступ к политике |
{$_modx->isMember('Marketing')} | Проверяет, принадлежит ли пользователь группе |
{$_modx->findResource('url-to/doc/')} | Возвращает true если ресурс найден |
{$_modx->sendError('unavailable')} | Отправляем ошибку пользователю и прекращаем работу скрипта |
{$_modx->getInfo()} | Информация о скорости загрузки |
{$_modx->getChildIds(23,6,['context' => 'web']} | Получаем список идентификаторов дочерних ресурсов |
{$_modx->getParentIds(23,6,['context' => 'web']} | Получаем список идентификаторов родительских ресурсов, которым принадлежит данный ресурс |
{$_modx->->getResource(1)} | Получаем массив информации о текущем ресурсе по его id |
{$_modx->getResources(['published' => 1, 'deleted' => 0])} | Получаем массив ресурсов |
{$_modx->cleanAlias()} | Генерация псевдонима |
Со всеми модификаторами можно ознакомиться здесь
{set $pt = $_modx->resource.pagetitle} {if $pt == 'Главная'} <p>Главная страница</p> {else} <p>Не главная</p> {/if}
Второй способ
{set $pt = $_modx->resource.pagetitle} {$pt == 'Главная' ? '<p>Главная страница</p>' : '<p>Не главная</p>'}
{var $array = ['key' => 'value']} {foreach $array as $key => $value} <p>{$key} is {$value}</p> {/foreach}
Выборка из списка
{set $count = 3} {set $array = [1,2,3,4,5,6]} {if $count in list $array} // действия удовлетворяющие условию {/if}
{switch $_modx->resource.id} {case '1'} <p>Главная страница</p> {case '2'} <p>О компании</p> {case '3'} <p>Услуги</p> {/switch}
Название шаблона "Базовый шаблон"
<!doctype html> <html lang="ru"> <head> <meta charset="{$_modx->config.modx_charset}"> <base href="{$_modx->config.site_url}" /> <title>{$_modx->resource.longtitle} - {$_modx->config.site_name} </title> </head> <body> // добавляем чанк {include 'file:chunks/header.html'} // расширяем шаблон {block 'center'} {include 'file:chunks/center.html'} {/block} {include 'file:chunks/footer.html'} {include 'file:chunks/js.html'} </body> </html>
Шаблон "Второстепенные страницы"
// расширяем шаблон {extends 'template:Базовый шаблон'} {block 'center'} {include 'file:chunks/othercenter.html'} {/block}