Саш, а ты проверял на практике? Ведь здесь не все так просто. Частичный вывод контента и т.п. По-моему не проканает нормальной работы.
На сколько я знаю, нет в смарти ни exit, ни die, ни даже return. Поэтому хочется или нет, но придется юзать if/else.
можно в контроллере прописать
$modx->smarty->allow_php_tag = true;
и в шаблоне тогда можно будет вставить
{php} die; {/php}
Это JSON-синтаксис, который по-моему с версии PHP-5.4 стал поддерживаться. Да, убрал его, ибо на стареньких пых-пыхах будет жестко обижаться.
Это уже к Джейсону Коварду. У него этот метод когда-то в xPDO болтался. К нам он прицепом докатился.
Развивай далее запрос как хочется.
:)
Надо поменять на
array( "where" => array( "id" => $product->get('resource_id'), ), "current" => 1, "showhidden" => 1, "showunpublished" => 1, )
А иначе корзина не работает.