capture
capture используется для того, чтобы присвоить вывод шаблона какой-либо
переменной вместо его вывода на экран. Любое содержание между {capture
name="foo"} и {/capture} сохраняется в переменную, указанную в
атрибуте name. Затем его можно использовать в шаблоне с помощью
специальной переменной $smarty.capture.foo, где foo - значение,
переданное атрибуту name. Если атрибут name не указан, то
используется default. Каждая комманда {capture} должна иметь пару
{/capture}. capture поддерживает вложение.
Техническое замечание
Smarty 1.4.0 - 1.4.4 помещало захваченный вывод в переменную $return.
С версии 1.4.5 поведение было изменено на использование атрибута name,
так что обновите ваши шаблоны соответственно.
Будте осторожны, сохраняя вывод комманды insert.
Если вы используете кэширование и встречаются команды
insert в области кэширования, то
не сохраняйте данный вывод.
Сохранение вывода шаблона
|
{$smarty.capture.banner}
|
{/if}
]]>