11 июля 2013 г., 22:29
Релизы modxRepository 1.2.1-beta и modxSmarty 0.0.3-beta на modx.com
С радостью сообщаю, что пакеты modxRepository и modxSmarty опубликованы в официальном репозитории modx.com
Про modxRepository я писал не мало, а вот про modxSmarty только мельком заикался. А между прочим считаю его одним из самых интересных своих пакетов. Объясню почему. Из-за особенностей парсера MODX, и самого MODX в целом, шаблоны MODX (именно modTemplate) — это по сути своей не совсем шаблоны, а как бы контроллеры. То есть именно то, какой шаблон указан для документа, определяет, какая логика будет проработана в процессе обработки документа. Это будет определено на уровне содержащихся в шаблоне сниппетов и чанков. Но как таковой функции шаблонизации они все-таки не имеют. Попробуйте, к примеру, сменить разом полностью все оформление готового сайта. Не получится просто так. А даже если и получится, то MODX-шаблоны будут играть в этом далеко не первую роль.
Использование пакета modxSmarty позволяет использовать для разработки своих сайтов шаблонизатор Smarty (забегая вперед, скажу, что в дальнейшем появятся подобные пакеты и для других систем шаблонизации, типа Twig и т.п.).
В данном случае Smarty дает сразу два мощных преимущества:
1. Реальную шаблонизацию, с возможностью смены всего скина сайта.
2. Дополнительные инструменты по обработке MODX-элементов и кешированию.
С первым пунктом наверняка многим все понятно, а по второму чуть подробней: Пакет modxSmarty не просто дает дополнительные настройки и устанавливает плагин, он еще и инсталирует несколько Smarty-плагинов, которые позволяют работать с MODX-тегами. Что это дает? Это позволяет значительно облегчить нагрузку на MODX-парсер, и не обрабатывать по несколько раз одни и те же элементы, когда это не надо.
Сразу скажу, что наилучший эффект достигается с пакетом phpTemplates, который позволяет выполнять php-код сразу на уровне статических шаблонов.
Несколько примеров работы с modxSmarty в видеоролике.