Есть ли в смарти простой способ вставить чистый php?

Dec 22, 2014

Мелким и недостойным специальной темы вопросам по smarty быть здесь! Иногда хочется написать короткий код на php в шаблоне, чтобы раскидать например составить условие where для процессора. И как-то не хочется особо париться с расширением процессора-сниппета и т.д. В смарти раньше было {php}, но теперь оно деприкейтид. Делать это через assign, foreach и if если и возможно, то совершенно неудобно. Если возможно. Хочется массив с id разбросать по шаблонам: если шаблон Товар — в 'id:IN', если Категория — в 'OR:parent:IN' Раньше можно было значит что-то типа

{php}
$a = array(164,185,280,282); // массив еще надо explode из списка в тв
foreach($a as $v){
    if($doc = $modx->getObject('modResource',$v) AND $doc->get('template') == 3)
        $docs[]=$v;
    else
        $folder[]=$v;
}

$where = array(
    'id:IN'=> $docs,
    'OR:parent:IN'=>$folder,
    'template'=>3
    );
{/php}

или же типа того и потом отправить это условие в стандартный процессор… Ну как-то так. То, что я не умею работать со смарти — неоспоримо. Может кто умный подскажет?