Сырые теги в Fenom
Никак не могу понять где собака зарыта.
В некоторых чанках fenom работает прекрасно, а в других частях сайта отказывается работать.
Не запускается fenom и на страницах сайта (в шаблонах, обычных чанках).
Рабочий пример
Вот пример который работает исправно, и запускается через самописный сниппет:
Нерабочие примеры
А вот примеры которые не работают никак, выводятся только сырые теги:
Да и такая конструкция тоже не работает:
Настройки фенома:
В некоторых чанках fenom работает прекрасно, а в других частях сайта отказывается работать.
Не запускается fenom и на страницах сайта (в шаблонах, обычных чанках).
Рабочий пример
Вот пример который работает исправно, и запускается через самописный сниппет:
[[!geo?
&tpl=`@INLINE
{set $category = $_modx->runSnippet('!get_category', ['input' => $.get.subcategory])}
<li>
<a href="{{~{{%page.id.118720}}}}?category={{+id}}" class="clearfix{if $.get.category == $id} active{/if}{if $category == $id} active{/if}{if $_modx->resource.category == $id} active{/if}">
<span class="col-xs-10">{{%category.{{+id}}}}</span>
<span class="badge pull-right col-xs-2">{$_modx->runSnippet('!submenu', ['parents' => 118720, 'tv_category' => $id, 'published' => 1])}</span>
</a>
</li>
`
]]
Нерабочие примеры
А вот примеры которые не работают никак, выводятся только сырые теги:
Адрес сайта: {$modx->config.site_url)} // сырые теги
[[!TicketMeta?
&tpl=`@INLINE
<div class="post-info col-xs-12">
<span class="glyphicon uk-icon-comments"></span>
<span class="uk-margin-right">{{!+comments}} {{+comments:units=`комментарий|комментария|комментариев`}}</span>
<span class="glyphicon glyphicon-eye-open"></span>
<span class="uk-margin-right">{{!+views}} {{+views:units=`просмотр|просмотра|просмотров`}} ({{!*id:todayViewsCount}} сегодня)</span>
<span data-uk-dropdown="{mode:'click'}" class="share-block">
<span class="glyphicon uk-icon-arrow-right"></span>
<span class="glyphicon uk-icon-align-justify"></span>
<a href="#">Поделиться </a>
<div class="uk-dropdown">
<ul class="uk-list">
<li><a href="#"><div class="uk-icon-button uk-icon-twitter"></div> Twitter</a></li>
<li> <a href="#"><div class="uk-icon-button uk-icon-vk"></div> Vkontakte</a></li>
<li><a href="#"><div class="uk-icon-button uk-icon-youtube"></div> Youtube</a></li>
<li><a href="#"><div class="uk-icon-button uk-icon-vimeo-square"></div> Vimeo</a></li>
<li><a href="#"><div class="uk-icon-button uk-icon-google-plus"></div> Google +</a></li>
</ul>
</div>
</span>
</div>
<div class="text-primary col-xs-12 uk-margin-top uk-margin-bottom">Отзывы к объявлению:</div>
Адрес сайта: {$modx->config.site_url)} // сырые теги
{if $comments == 0} // сырые теги
<div class="col-xs-12 text-muted"><p>К данному объявлению комментариев нет</p></div>
{/if} // сырые теги
`
]]
Да и такая конструкция тоже не работает:
{if $_modx->hasSessionContext('mgr')}
{set $info = $_modx->getInfo('', false)}
Время работы: <strong>{$info.totalTime}</strong>
Время запросов: <strong>{$info.totalTime}</strong>
Количество запросов: <strong>{$info.queries}</strong>
Источник: <strong>{$info.source}</strong>
{/if}
Настройки фенома:
pdotools_fenom_cache - false
pdotools_fenom_default - true
pdotools_fenom_modx - false
pdotools_fenom_options - ''
pdotools_fenom_parser - true
pdotools_fenom_php - false
пробовал отключать/включать всё подряд — тоже не помогло.
Поблагодарить автора
Отправить деньги
Комментарии: 20
Сделал новую статью из черновика, но дата создания осталась прежней и статья оказалась далеко внизу.
Помогите пожалуйста, Fenom реально не хочет запускаться!
Помогите пожалуйста, Fenom реально не хочет запускаться!
P.S. Все компоненты обновлены до последних версий.
Адрес сайта: {$modx->config.site_url)} // сырые теги
pdotools_fenom_modx = false, но пытаешься обращаться к $modx вместо $_modx.И вообще, смотри системный журнал, все ошибки Fenom пишет туда.
К сожалению
У меня системная настройка log_level установлена на 1 (ERROR), но ничего связанного с Fenom туда не пишется. Если изменить на 4 (DEBUG) и покопаться в километровых записях кода шаблонов…
Адрес сайта: {$_modx->config.site_url)}
тоже не работает…У меня системная настройка log_level установлена на 1 (ERROR), но ничего связанного с Fenom туда не пишется. Если изменить на 4 (DEBUG) и покопаться в километровых записях кода шаблонов…
К сожалениюА эта скобка, не пойми откуда, там должна быть?
Адрес сайта: {$_modx->config.site_url)}тоже не работает…
… site_url)}
Хороший вопрос! ))
Я копировал с анонса Fenom, видно туда закралась ошибка.
Но проблему это не решает.
Вот другая нерабочая конструкция, скопированная с доков:
Я копировал с анонса Fenom, видно туда закралась ошибка.
Но проблему это не решает.
Вот другая нерабочая конструкция, скопированная с доков:
Вы находитесь в контексте {$_modx->context.key}
Она рабочая. Просто Вы на своём сайте допустили где-то ошибку в синтаксисе. Либо что-то из этой серии… Феном из коробки pdoTools достаточно рабочий шаблонизатор, просто надо быть более внимательным к мелочам, ибо это не стандартные теги MODX, с которыми если ошибся где-то — остальное не поломается. С Феномом такое не пройдёт.
На Fenom мной был сделан уже не один проект, и на сегодня не представляю разработку на MODX Revo без него.
На Fenom мной был сделан уже не один проект, и на сегодня не представляю разработку на MODX Revo без него.
Спасибо за разъяснения!
Буду по-порядку выискивать ошибки, т.к. сайт тяжелый…
Буду по-порядку выискивать ошибки, т.к. сайт тяжелый…
Можно конкретно цитату, где в документации есть закрывающие )} без открывающих {(? Я не нашел, но если есть — надо исправить.
Fenom в pdoTools действительно полностью рабочий, но он очень чувствителен к синтаксису. Одна неверная скобка и — привет, шаблон не компилируется.
Кроме как быть очень внимательным, ничего посоветовать не могу.
Fenom в pdoTools действительно полностью рабочий, но он очень чувствителен к синтаксису. Одна неверная скобка и — привет, шаблон не компилируется.
Кроме как быть очень внимательным, ничего посоветовать не могу.
В подзаголовке Особенности. Видно этот кусочек мне под руку попался…
Понятно, буду искать ошибку. Поиск усложняется тем, что сай очень тяжелый, много чего понапихано в него уже. Буду по косточкам раскладывать. Спасибо за помощь!
Понятно, буду искать ошибку. Поиск усложняется тем, что сай очень тяжелый, много чего понапихано в него уже. Буду по косточкам раскладывать. Спасибо за помощь!
Спасибо, исправил, но это же явно не сайт документации.
За плюсами мега-шаблонизатора скрываются и некоторые минусы. В частности, он реально строже, чем парсер MODX, который может несколько секунд крутить несуществующие плейсхолдеры в цикле. Ошибок вроде нет, а страницы потом грузятся по 30 секунд.
Поиск усложняется тем, что сай очень тяжелый, много чего понапихано в него уже. Буду по косточкам раскладывать.Иначе, пардон, никак.
За плюсами мега-шаблонизатора скрываются и некоторые минусы. В частности, он реально строже, чем парсер MODX, который может несколько секунд крутить несуществующие плейсхолдеры в цикле. Ошибок вроде нет, а страницы потом грузятся по 30 секунд.
Я копировал с анонса Fenom, видно туда закралась ошибка.
но это же явно не сайт документации.согласен, это только анонс, но там куча полезной информации и много комментариев, с которых можно тоже черпать ответы. Можно сказать «неофициальная» документация. ))
парсер MODX, который может несколько секунд крутить несуществующие плейсхолдеры в цикле. Ошибок вроде нет, а страница грузится 30 секундА вот за эту информацию отдельное спасибо! Теперь ясно почему у меня столько тормозов. У меня куча условий, типа [[$content.[[*id]]]] и других посложнее. Практически весь сайт построен на них. Получается куча несуществующих чанков, плейсхолдеров и тегов подгружаются и проверяются…
Да, так и есть. Именно потому я и написал в своё время debugParser — он отлично выявляет подобные места.
Ага, вот почему он у меня показывает
Спасибо, теперь-то хоть всё становится на свои места. Жалко что руки не сразу прямыми растут, нужно время и набитые шишки чтобы их исправлять…
# - 1
Tag - [[$content.[[*pageid]]:is=`moddevtools`:then=``:else=`[[$content.[[*pageid]]]]`]]
Queries - 24
Queries time, s - 0.0052235
Parse Time, s - 1.6414890
И таких «тяжелых» конструкций у меня куча… Спасибо, теперь-то хоть всё становится на свои места. Жалко что руки не сразу прямыми растут, нужно время и набитые шишки чтобы их исправлять…
И здесь иначе, пардон, никак =)
Смотри, там дальше должен быть разбор составляющих этого условия. Обычно тормозит что-то одно — нужно это найти.
Смотри, там дальше должен быть разбор составляющих этого условия. Обычно тормозит что-то одно — нужно это найти.
Ок, а где дальше? В следующих строчках? Буду искать, т.к. в первых 10 их нету.
Одно я не могу там понять. Почему в колонку Tag постоянно подставляется весь код шаблона начиная с
Одно я не могу там понять. Почему в колонку Tag постоянно подставляется весь код шаблона начиная с
<!DOCTYPE html> <html lang="ru">
и заканчивая < / html>
?
Потому, что когда включен pdotools_fenom_parser, Fenom кушает всю страницу целиком.
Поэтому и парсер показывает всю обрабатываему страницу. На тот момент нет ни чанков, ни сниппетов, есть только html и специальные теги Fenom, которые он пытается обработать.
Именно поэтому pdotools_fenom_parser по умолчанию отключено.
Поэтому и парсер показывает всю обрабатываему страницу. На тот момент нет ни чанков, ни сниппетов, есть только html и специальные теги Fenom, которые он пытается обработать.
Именно поэтому pdotools_fenom_parser по умолчанию отключено.
Спасибо, не знал, очень помог!
На здоровье.
Изначально я и планировал использовать Fenom только в чанках, для замены синтаксиса MODX. Но ведь парсинг всей страницы, расширение шаблонов — это совсем другой уровень, слишком заманчиво.
Поэтому, такая возможность есть, но отключена по умолчанию. Она крутая, но требует много сил.
Изначально я и планировал использовать Fenom только в чанках, для замены синтаксиса MODX. Но ведь парсинг всей страницы, расширение шаблонов — это совсем другой уровень, слишком заманчиво.
Поэтому, такая возможность есть, но отключена по умолчанию. Она крутая, но требует много сил.
Ошибок вроде нет, а страницы потом грузятся по 30 секунд.У моего клиента сайт стал грузиться 26 секунд, простой одностраничник. Стал ковырять что случилось. Оказывается, он вставил контент из ворда как есть, а там море тегов [[[[[]]]]]]] типа мапы. MODX плакал…
Проблема решилась когда я перевёл все теги и сниппеты с чанка на Fenom!
Конфликт происходил если нужно было запускать оба парсера, а если все теги на Fenomе, то всё работает прекрасно!
Fenom — классная штука, похоже и я в него влюбляюсь! )))
Конфликт происходил если нужно было запускать оба парсера, а если все теги на Fenomе, то всё работает прекрасно!
Fenom — классная штука, похоже и я в него влюбляюсь! )))
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.