Правильное оформление условия в шаблоне
Добрый день! Есть такая небольшая проблема, не могу правильно внедрить в условие шаблонизатора сниппет свой.
Код сниппета такой:
В чанке используя все возможности шаблонизатора пытаюсь выстроить это дело таким образом:
Код сниппета такой:
<?php
$q = $modx->newQuery('msProductLink', array('link' => 1, 'master' => $parent));
$q->select('slave');
$resources = array();
if ($q->prepare() && $q->stmt->execute()) {
$ids = $q->stmt->fetchAll(PDO::FETCH_COLUMN);
}
return count($ids);Называется он у меня SlaveGoods.В чанке используя все возможности шаблонизатора пытаюсь выстроить это дело таким образом:
[[[[!SlaveGoods &parent=[[*id]]]] :is=`0`:then=`Ничего нет!`:else=`Если условие не выполняется и записи есть`]]В результате это не работает все. Такой вариант вообще возможен или нет? Может через плейсхолдер свой включить это в условие? Хотя начальник мой говорит, что через плейсхолдеры свои не будет работать тоже. Как решить эту проблему? Комментарии: 17
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
что-то должно выводится в любом случае, где то ошибка скрывается =)
Отлаживайте сниппет.
там одна строка.
И не работает. Как обращаться к чанкам правильно?
Создал такой параметр $chank и вызываю потом следующим образом:
И ничего не выводит. Так как же вывести чанк из сниппета? Документация показывает, как будто я все правильно пишу, хотя на деле не работает это все… Не знаю даже что делать-то.
должна работать?
Обычно пишут так (сниппет используется в качестве фильтра):
Кроме того, я согласен с Алексеем, нужно вынести все в сниппет и вызывать просто сниппет. Фильтры работают медленнее. И еще хочу заметить, что в сниппетах не должно быть никаких echo и print.
Ты так много говоришь про чанки, а где они? Покажи хотя бы чанк tell_my.
Форма, которая не выводится.
Написал в сниппете PrintChunk вывод echo чтобы проверить, что сниппет вообще работает. Не знаю почему такая простая конструкция не выводит чанк?
Сниппет вызываю потом таким образом:
ПашокЧтобы это могло значит? Ведь, вроде, по идее должен грузиться сам чанк с именем tpl…
Этот код правильный —
Скорее всего имя чанка указано неправильно. Просто открой чанк, скопируй его название и вставь его в вызов сниппета.
Пашок