capture
{capture} используется для того, чтобы собрать результат обработки
части шаблона между тэгами
в какую-то переменную, вместо того, чтобы вывести результат браузеру.
Любое содержимое между {capture name='foo'} и {/capture} сохраняется в
переменную, указанную в атрибуте name.
Захваченные данные могут в дальнейшем использоваться в
шаблоне при помощи специальной переменной $smarty.capture.foo,
где "foo" - значение, переданное атрибуту name. Если атрибут name не указан,
то используется "default".
Команда capture поддерживает вложенность.
Будте осторожны, сохраняя вывод команды {insert}.
Если вы используете кэширование
и в области кэширования встречаются команды
insert, то не сохраняйте данный вывод.
Сохранение вывода шаблона
{$smarty.capture.banner}
{/if}
]]>
сохранение содержимого в переменную
Этот пример также демонстрирует функцию
{popup}
Your ip is {$smarty.server.REMOTE_ADDR}.
{/capture}
help
]]>
См. также
$smarty.capture,
{eval},
{fetch},
fetch()
и {assign}.