{with} и {loop} плагины в движке шаблонов Dwoo изменяют контекст по умолчанию для разрешения имен переменных.
Если в Dwoo вы используете шаблон:
{$arr.foo}
{with $arr} {$foo} / {$arr.foo} {/with}
с данными:
array('arr' => array( 'foo' => 'bar' ))
будет выводиться:
bar
bar /
потому что second {$ arr.foo} на самом деле означает {$ arr.arr.foo} в глобальном контексте.
Знаете ли вы, как я могу добиться подобного эффекта в Smarty?
Есть ли какая-то встроенная функциональность или сторонний плагин, который мог бы позволить мне иметь это?
Есть ли у вас идеи, как создать такой плагин, если он не существует?