Chapter 3. Базовый синтаксис

Все тэги шаблонов Smarty располагаются между специальными разделителями. По умолчанию это { и }, но они могут быть изменены.

В примерах этого руководства мы будем использовать стандартные разделители. Smarty все содержимое вне разделителей отображает как статический контент, без изменений. Когда Smarty встречает тэги шаблона, то пытается интерпретировать их и вывести вместо них соответствующий результат.

Комментарии

Комментарии в шаблонах заключаются в звездочки (*) окруженные разделителями, например:


{* это комментарий *}

  

Smarty НЕ отображает комментарии в выводе шаблона, в отличие от <!-- комментариев HTML -->. Они используются для внутренних примечаний в шаблонах, которые никто не увидит ;-)

Example 3.1. Комментарии внутри шаблона


<body>
{* Я - простой комментарий Smarty, я не существую в скомпилированном выводе *}
<html>
<head>
 <title>{$title}</title>
</head>
<body>

{* другой однострочный комментарий Smarty *}
<!-- HTML-комментарий, который будет отправлен браузеру -->

{* этот многострочный комментарий
   не отправляется в бразуер
*}

{*********************************************************
 Многострочный блок комментариев с информацие об авторе 
  @ author:         bg@example.com
  @ maintainer:     support@example.com
  @ para:           var that sets block style
  @ css:            the style output
**********************************************************}

{* Файл-заголовок с главным логотипом и т.д. *}
{include file='header.tpl'}


{* Примечание разработчика: переменная $includeFile назначается в скрипте foo.php *}
<!-- Отображает блок комментариев главного контента -->
{include file=$includeFile}

{* этот блок <select> ненужен *}
{*
<select name="company">
  {html_options options=$vals selected=$selected_id}
</select>
*}

<!-- Отображение заголовков от аффилиатор отключено -->
{* $affiliate|upper *}

{* вложенные комментарии использовать нельзя *}
{*
<select name="company">
  {* <option value="0">-- нет -- </option> *}
  {html_options options=$vals selected=$selected_id}
</select>
*}

{* cvs-тэг шаблона: эти 36 ДОЛЖНЫ быть американской валютой,
   но в таком случае CVS обработает их *}
{* &#36;Id: Exp &#36; *}
{* $Id: *}
</body>
</html>