Every Smarty tag either prints a
variable or invokes some sort
of function. These are processed and displayed by enclosing the
function and its
attributes
within delimiters like so:
{funcname attr1='val1' attr2='val2'}
.
Example 3.3. function syntax
{config_load file='colors.conf'} {include file='header.tpl'} {insert file='banner_ads.tpl' title='Smarty is cool'} {if $logged_in} Welcome, <font color="{#fontColor#}">{$name}!</font> {else} hi, {$name} {/if} {include file='footer.tpl' ad=$random_id}
Both built-in functions and custom functions have the same syntax within templates.
Built-in functions are the inner workings of Smarty, such as
{if}
,{section}
and{strip}
. There should be no need to change or modify them.Custom functions are additional functions implemented via plugins. They can be modified to your liking, or you can create new ones.
{html_options}
is an example of a custom function.
See also register_function()