Получить результат из снипета, как ?
Есть снипет который проводит проверку и возвращает ноль или единицу. Не совсем понятно, как на феноме проверить такой результат и выполнить нужное действие?
Спасибо!
Спасибо!
Комментарии: 9
Не?
{set $result = $_modx->runSnippet('abc');}
Похоже то что надо.
Заметил, что в ряде чанков при добавления кода фенома, перестает отображать страницу. Куда копать в таких случаях? Причем не важно какое действие, даже банально объявить переменную.
Это происходит кода в коде присутсвуют фигорные скобки '{' '}' запускается парсер. И тем самом вы видете белую страницу. Для того что бы все хорошо нужно экронировать. Более подробно в доках Fenom или на modx.pro + есть еще много статей.
не совсем понял. Есть следующая строка на феноме:
{set a = $_modx->runSnippet('abc')} в одном чанке работает без проблем, в другом приводит к белой странице. Не могу понять в чем разница.
{set a = $_modx->runSnippet('abc')} в одном чанке работает без проблем, в другом приводит к белой странице. Не могу понять в чем разница.
Посмотри логи. Там будет причина на чем спаткнулся парсер.
{set a = $_modx->runSnippet('abc')}
Не может останавливать парсер.
я тоже так думал. Однако останавливает. Пришлось код убирать.
Вот что пишет Undefined macro 'n.callMethod' in e8ab2356d37f27343d3f4b02db2f5584
Можно также в сниппете установить плейсхолдер, и после обычного вызова сниппета проверять значение плейсхолдера
{'!mySnippet' | snippet}
{if $_modx->getPlaceholder('my_pls')}
Мой плейсхолдер равен {$_modx->getPlaceholder('my_pls')}
{/if}
Сам сниппет<?php
$modx->setPlaceholder('my_pls', 1);
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.