Центр документации
Карта сайта


Новая документация

Настройка платежных систем
Настройка способа оплаты КупиВкредит
Настройка способа оплаты Acquiro
Настройка способа оплаты AvisoSMS

Обновленная документация 

Разработчикам (API)
Руководство пользователя

Шаблонизатор Amiro.CMS

API предоставляет два вида шаблонизаторов – полный и облегченный.

При разработке для публичной части сайта рекомендуется использовать некеширующий шаблонизатор AMI_Template, работающий только с шаблонами на диске, содержащий минимально достаточный функционал, потребляющий минимум памяти и процессорного времени.

Полный шаблонизатор AMI_TemplateSystem рекомендуется использовать, только если базовым функционалом обойтись заведомо невозможно.

В вашем коде достаточно использовать облегченный шаблонизатор если:

  • Скрипт является некэшируемым, важна скорость обработки шаблона (типовой пример – скрипт для отдачи быстрых AJAX запросов).
  • Шаблоны содержат только заменяемые переменные типа ##name##, ##link## и т.д. Поддержка специальных конструкций ##if(...)##, ##include_template...##, ##setvar...## и т.п. в лёгком шаблонизаторе отсутствует.
  • Шаблон не содержит конструкции подключения языковых файлов, например %%include_language...%%. Все языковые файлы должны быть добавлены в PHP коде. Тем не менее языковые переменные типа %%caption%% обрабатываются.
  • Шаблоны лежат только на диске (не в базе данных).

Типовые операции с шаблонами 

Облегченный шаблонизатор:

Операция

Пример вызова

Создание объекта

$oTpl = AMI::getResource('env/template');

Добавление шаблона

$oTpl->addBlock('my_block', 'templates/my_tpl.tpl');

Парсинг шаблона

$str = $oTpl->parse('my_block:my_set', $aScope);

Парсинг языкового файла

$aLang = $oTpl->parseLocale('templates/lang/my_lang.lng');

Полный шаблонизатор:

В отличие от облегченного поддерживает чтение шаблонов из базы данных и позволяет использовать полный функционал системы.

Операция

Пример вызова

Создание объекта

$oTpl = AMI::getResource('env/template_sys');

Переключение источника шаблонов

$oTpl->setLocationSource('templates', 'db');

Операции добавления и парсинга шаблона и языковых файлов выполняются аналогично.

Установка и настройка Руководство пользователя Интеграция дизайна Разработчикам (API) Документация для скачивания
 2000 – 2011 © Amiro.CMS Все права защищены.