Словари элементов WACT-шаблона
WACT шаблонизатор поддерживает те теги, фильтры и преопределенные свойства, которые находятся в так называемых словарях:
- словарь тегов,
- словарь фильтров
- словарь преопределенных свойств
По-умолчанию, WACT ищет теги во всех папках limb/*/src/template/tags и в папке src/template/tags приложения (если используется пакет WEB_APP), а также в limb/wact/src/tags
WACT ищет файлы тегов и других элементов на основе определенных шаблонов:
- .tag.php - для файлов тегов.
- .filter.php - для файлов фильтров.
- .prop.php - для файлов предопределенных свойств.
Словари обычно кешируются и собираются только 1 один раз. Обычно кеш словарей лежит в папке /var/compiled вашего приложения. Если вам необходимо пересоздать словари, например, вы создаете новый тег - просто удалите файлы словарей и WACT проведет процедуру сканирования заново.
При сканировании WACT использует так называемые аннотации - некоторые мета-описания, указывающие, например, название тега, какие аттрибуты являются обязательными т.д. Например, файл тега <list:list>
<?php
/**
* Include another template into the current template
* @tag core:INCLUDE
* @req_const_attributes file
* @forbid_end_tag
*/
class WactCoreIncludeTag extends WactCompilerTag
{
[...]
}
?>
@tag, @req_const_attributes, @forbig_end_tag - это аннотации:
- @tag - указывает на название тега, как он будет использоваться в шаблоне (регист не имеет значения).
- @req_const_attributes - указывает, какие обязательные атрибуты есть у тега.
- @forbig_end_tag - указывает, что данный тег не может иметь отдельный завершающий тег (возможно, эта аннотация будет удалена в будущем).
Набор аннотаций достаточно велик и отличается для фильтров, тегов и предопределенных свойств. см. разделы "Создание своих тегов", "Создание своих фильтров", "Создание своих предопределенных свойств".

Обсуждение