Функции Каждый тэг Smarty либо выводит значение переменной, либо вызывает некоторую функцию. Они обрабатываются путём заключения функции и ее параметров в разделители, например: {funcname attr1='val' attr2='val'}. Синтаксис функций {$name}! {else} Hi, {$name}! {/if} {include file='footer.tpl' ad=$random_id} ]]> И встроенные, и пользовательские функции используются с одинаковым синтаксисом. Встроенные функции обеспечивают внутреннюю работу Smarty, например {if}, {section} и {strip}. У вас не должно быть причин для их модификации. Пользовательские функции являются дополнительными и реализуются через плагины. Они могут быть изменены по вашему желанию, также вы можете создать новые. Примерами пользовательских функций могут быть {html_options} и {popup}. См. также register_function()