Основні моменти в роботі із шаблонізатором Smarty
 {$foo} відображення простої змінної (не масив і не об'єкт)
{$foo[4]} відображає 5-й елемент числового масиву
{$foo.bar} відображає значення ключа "bar" асоціативного масиву, подібно до PHP $foo['bar']
{$foo.$bar} відображає значення змінного ключа масиву, подібно до PHP $foo[$bar]
{$foo->bar} відображає властивість "bar" об'єкта
{$foo->bar()} відображає значення методу "bar" об'єкта, що повертається.
{#foo#} відображає змінну "foo" конфігураційного файлу
{$smarty.config.foo} синонім для {#foo#}
{$foo[bar]} синтаксис доступний лише у циклі section, див. {section}
{assign var=foo value='baa'} {$foo} відображає "baa", див {assign}
 
Також є безліч інших комбінацій
 
{$foo.bar.baz}
{$foo.$bar.$baz}
{$foo[4].baz}
{$foo[4].$baz}
{$foo.bar.baz[4]}
{$foo->bar($baz,2,$bar)} передача параметра
{"foo"} статичні значення також дозволені
 
{* отображает серверную переменную "SERVER_NAME" ($_SERVER['SERVER_NAME'])*}
{$smarty.server.SERVER_NAME}
 
//
// Впроваджені змінні у подвійних лапках
//
{func var="test $foo test"} шукає $foo
{func var="test $foo_bar test"} шукає $foo _bar
{func var="test $foo[0] test"} шукає $foo[0]
{func var="test $foo[bar] test"} шукає $foo[bar]
{func var="test $foo.bar test"} шукає $foo (не $foo.bar)
{func var="test `$foo.bar` test"} шукає $foo.bar
{func var="test `$foo.bar` test"|escape} модифікатор поза лапками!
 
//
// Приклади
//
{* заменит $tpl_name её значением *}
{include file="subdir/$tpl_name.tpl"}
{* не заменит $tpl_name *}
{include file='subdir/$tpl_name.tpl'} 
{* нужны обратные кавычки из за того, что имя содержит точки *}
{cycle values="one,two,`$smarty.config.myval`"}
{* аналог $module['contact'].'.tpl' в PHP *}
{include file="`$module.contact`.tpl"}
{* аналог $module[$view].'.tpl' в PHP *}
{include file="`$module.$view`.tpl"}
 {* отображение параметра page из URL ($_GET) http://www.example.com/index.php?page=foo *}
{$smarty.get.page}
 
{* отображение параметра "page" из формы ($_POST['page']) *}
{$smarty.post.page}
 
{* отображение значения cookie "username" ($_COOKIE['username']) *}
{$smarty.cookies.username}
 
{* отображение серверной переменной "SERVER_NAME" ($_SERVER['SERVER_NAME'])*}
{$smarty.server.SERVER_NAME}
 
{* отображение переменной системного окружения "PATH" *}
{$smarty.env.PATH}
 
{* отображение переменной сессии PHP "id" ($_SESSION['id']) *}
{$smarty.session.id}
 
{* отображение переменной "username" из смешенных get/post/cookies/server/env *}
{$smarty.request.username}

Арифметичні операції

 {$foo+1}
{$foo*$bar}
{* несколько более сложных примеров *}
{$foo->bar-$bar[1]*$baz->foo->bar()-3*7}
{if ($foo+$bar.test%$baz*134232+10+$b+10)}
{$foo|truncate:"`$fooTruncCount/$barTruncFactor-1`"}
{assign var="foo" value="`$foo+$bar`"}

Модифікатори змінних

 {* применение модификатора к переменной *}
{$title|upper}
 
{* модификатор с параметрами *}
{$title|truncate:40:'...'}
 
{* применение модификатора к аргументу функции *}
{html_table loop=$myvar|upper}
 
{* с параметрами *}
{html_table loop=$myvar|truncate:40:'...'}
 
{* применение модификатора к строке *}
{'foobar'|upper}
 
{* использование date_format для форматирования текущей даты *}
{$smarty.now|date_format:"%Y/%m/%d"}
 
{* применение модификатора к функции *}
{mailto|upper address='smarty@example.com'}
 
{* использование функции PHP str_repeat *}
{'='|str_repeat:80}
 
{* функция PHP count *}
{$myArray|@count}
 
{* функция PHP shuffle, применяемая к IP адресу сервера *}
{$smarty.server.SERVER_ADDR|shuffle}
 
(* це приведе у верхній регістр літер і обріже прогалини у всіх елементів масиву *}
 
//
// Комбінування модифікаторів
//
{$articleTitle}
{$articleTitle|upper|spacify}
{$articleTitle|lower|spacify|truncate}
{$articleTitle|lower|truncate:30|spacify}
{$articleTitle|lower|spacify|truncate:30:". . ."}