- Apache::Template
- Синтаксис Apache::Template
- Использование Template Toolkit в коде статичных страниц (html, etc.)
- Полезные ссылки
Apache::Template
Template Toolkit - мощная perl-библиотека для работы с шаблонами, позволяющая разделять код, данные и представление. (Система обработки шаблонов). Фактически, Template Toolkit - это набор модулей.
Template.pm - фронтенд к Template Toolkit, предоставляющий доступ к возможностям библиотеки через один модуль с простым интерфейсом. Модуль Template создает и использует объект Template::Service для передачи и вывода данных по заданному пути (STDOUT, файл, и т.д.). Template.pm работает с STDOUT, ссылками на переменные и т.д.
Модуль Apache::Template - это фронтенд к Template Toolkit, который создает объект Template::Service::Apache, вызывает его при необходимости и отправляет вывод обратно в подходящий объект Apache::Request. Apache::Template работает с mod_perl, Apache::Request и конфигурацией, переданной через httpd.conf.
Всю основную работу для обоих фронтендов выполняет Template::Service и его подклассы.
В зависимости от ситуации и специфики окружения следует использовать Template.pm или Apache::Template.
Синтаксис Apache::Template
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
PerlModule Apache::Template TT2Trim On TT2PostChomp On TT2EvalPerl On TT2IncludePath /usr/local/tt2/templates TT2IncludePath /home/abw/tt2/lib TT2PreProcess config header TT2PostProcess footer TT2Error error < Files *.tt2 > SetHandler perl-script PerlHandler Apache::Template < / Files > < Location /tt2 > SetHandler perl-script PerlHandler Apache::Template < / Location > |
Использование Template Toolkit в коде статичных страниц (html, etc.)
В httpd.conf задается конфигурация:
|
1 2 3 4 5 6 7 8 9 |
PerlModule Apache::Template TT2IncludePath /www.aninatalie.ru/templates TT2PluginBase Template_Plugin < Files *.shtml > SetHandler perl-script PerlHandler Apache::Template < / Files > |
Благодаря приведенным инструкциям, теперь, в html-коде файлов с расширением .shtml можно использовать директивы Template Toolkit.
Например, catalogue_janssen.shtml:
|
1 2 3 4 5 6 7 8 9 10 11 |
[% WRAPPER 'page_design.wr' title = 'Каталог товаров Spa Cosmetics - JANSSEN' %] < h1 >JANSSEN< /h1 > < table class="catalogue" > < tr > < td > ... |
При обработке шаблонов будут использоваться параметры, заданные директивами с префиксом TT2, в конфигурационном файле Apache.
Полезные ссылки
EN
http://perl.apache.org/docs/tutorials/tmpl/comparison/comparison.html#Template_Toolkit
http://template-toolkit.org/docs/manual/Internals.html
http://template-toolkit.org/docs/manual/Config.html
http://search.cpan.org/~abw/Apache-Template-0.09/lib/Apache/Template.pm
RU