Используем шаблонизатор Fenom в MODX

Чтобы начать его использовать ставим приложение pdoTools от Безумкина.

Заходим в системные настройки и включаем опцию pdotools_fenom_parser: «Использовать Fenom на страницах». Но скорей всего после этого он у вас не заработает, ведь на страницах все ещё есть включения открывающей скобки в CSS и JavaScript {. Помещаем их в {ignore}{/ignore}, инлайновый (внедрённый) CSS-код выносим в файл (по опыту, в данном случае игнорирование их парсером pdoParser не помогает).

Ниже приведена таблица соответствия классического синтаксиса MODX с Fenom.

Content Elements MODX Revolution Fenom (pdoTools)
Templates no tag representation
Resource Fields [[*field]]
[[*id]]
{$_modx->resource.pagetitle}
{$_modx->resource.content}
{$_modx->resource.id}
Template Variables [[*templatevar]] {$_modx->resource.tv_param}
Chunks [[$chunk]] {$_modx->getChunk('chunk')}
[[$Hello?name=`George`]]
Snippets [[snippet]]
[[pdoResources?
&limit=`5`
&tpl=`ListRowTpl`
]]
{$_modx->runSnippet('pdoResources', [
'limit' => 5,
'tpl' => 'ListRowTpl',
])}
Plugins no tag representation
Modules does not exist in Revolution, use CMPs
Content Tags
Placeholders [[+placeholder]]
[[+page.nav]]
{$_modx->getPlaceholder('page.nav')}
Links [[~link]]
[[~15]]
[[~[[+id]]]]
{$_modx->makeUrl(15)}
{$_modx->makeUrl($id)}
System Settings [[++system_setting]] {$_modx->config.site_name}
Language [[%language_string_key]] {$_modx->lexicon('language_string_key')}
Comment [[-this is a comment]] {* this is a comment *}
If [[+tv_param:is=`0`:then=`
Yes
`:else=`
No
`]]
{if $_modx->resource.tv_param}
Yes
{else}
No
{/if}

https://docs.modx.pro/components/pdotools/parser

Update: рекомендую вам не использовать этого «рогатого зайца» MODX с Fenom и переключиться на современные CMS с нормальными шаблонизаторами, такие как October CMS.

Комментарии читателей

Добавить комментарий