What is Smarty?
Why use it?
Use Cases and Work Flow
Syntax Comparison
Template Inheritance
Best Practices
Crash Course
You may use the Smarty logo according to the trademark notice.
                 
                 
              
For sponsorship, advertising, news or other inquiries, contact us at:
  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()