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:
Table of Contents
Все тэги шаблонов 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 обработает их *} {* $Id: Exp $ *} {* $Id: *} </body> </html>