Создание чанка
Перед использованием чанка, вы должны создать его и придумать название, делается это в админке правой кнопкой мыши нажимаем на чанки и создаем новый чанк:

Использование
Для использования чанка вы пишете ссылку на него в ваших шаблонах или на странице сайта. Формат ссылки:
[[$chunkName]]
Эта ссылка заменяется содержимым чанка.
Также вы можете передавать свойства чанку. Скажем есть у вас чанк ‘intro’ с содержимым:
Привет, [[+name]]. У тебя [[+messageCount]] сообщений. Вы можете придать значения свойствам чанка следующим образом:
[[$intro? &name=Жора &messageCount=12]]
На выходе будем иметь запись:
Привет, Жора. У тебя 12 сообщений.
Можно также немного пойти вперед и использовать **переменную шаблона, **которая позволяет пользователю определять имя ресурса.
[[!$intro? &name=[[*usersName]] &messageCount=[[*messageCount]]]]
или в чанке самом по себе
Привет, [[*usersName]]. У вас [[*messageCount]] сообщений. Офтоп: мне это напомнило Привет, %username% из д3, а вам?
Обработка чанка через API
Чанки часто используются для форматирования вывода сниппетов. Чанк может быть образован из снипета с помощью функции process(); Например, возмем чанк ‘rowTpl’:
$resources = $modx->getCollection(‘modResource’,array(‘published’ => true)); $i = 0; $output = ‘’; foreach ($resources as $resource) { $properties = $resource->toArray(); $properties[‘rowCls’] = $i % 2 ? ’’ : ‘alt’; $output .= $modx->getChunk(‘rowTpl’,$properties); $i++; } return ‘
Изменение чанка с помощью API
Чанками можно манипулировать с помощью MODx API:
newObject('modChunk'); $chunk->set('name','NewChunkName'); $chunk->setContent('This is my new chunk!
'); $chunk->save(); /* get an existing chunk, modify the content and save changes to the database */ $chunk = $modx->getObject('modChunk', array('name' => 'MyExistingChunk')); if ($chunk) { $chunk->setContent('This is my existing chunks new content!
'); $chunk->save(); } /* get an existing chunk and delete it from the database */ $chunk = $modx->getObject('modChunk', array('name' => 'MyObsoleteChunk')); if ($chunk) $chunk->remove(); ?>Теги используемые по умолчанию для вывода контента
В MODx Revolution каждая страница всегда имеет следующие поля для вывода контента, которые вы можете использовать при создании своих шаблонов. Кроме как для ID источников (ресурсов) и полей предка, они задаются пользователем при редактировании ресурса и могут быть просто пустыми если пользователь их не заполнил:
ТегОписаниеПримеры использования
*[[id]] ID ресурса страницы (устанавливается MODx при создании страницы) Часто используется в сочетании с ссылкой: Ссылка на эту страницу!
*[[pagetitle]] Название страницы
*[[longtitle]] Длинное название страницы
[[*longtitle]]
*[[alias]] Псевдоним (алиас) страницы. Используется для создания URL страницы
*[[description]] Описание страницы.
*[[introtext]] Аннотация страницы. Часто используется сниппетами для аннотирования постов, например, Ditto
*[[parent]] ID страницы-предка (если таковая существует). Устанавливается MODx при создании страницы. Может быть изменена пользователем. Часто используется вместе с ссылкой, синтаксис Вверх к родительской странице
[[menutitle]] Название страницы в меню. *Чаще всего используется такими сниппетами, как*Wayfinder* *когда необходимо создать динамическое меню. *
*[[content]] Содержимое страницы.
[[*content]]Другие теги
Эти теги представляют собой системные настройки, которые можно отрегулировать через меню Система (System) -> Настройки системы (****System Settings).
ТегОписаниеПример использовани
[[++site_url]]
Содержит URL вашего сайта, например http://www.yoursite.com/
Со многими CMS, которые опираются на разработки Apache является общей практикой включать базовый тег в хед страницы:
[[++site_name]] Название сайта
[[++site_start]] Содержит ID станицы, определенной как «Главная» Часто используется в синтаксисе сочетания со ссылкой Главная
[[$chunk]] Это вызов чанка по имени. Чанки – это повторяемые части контента. Обычно чанками могут выступать хедер или футер.**
[[~link]] Используйте такой синтаксис для построения ссылок к страницам по их уникальному id (которые можно увидеть в родительских ресурсах возле имени страницы в дереве ресурсов). Эти ссылки не ломаются, даже если страницы передвигаются или переименовываются. Главная