Префильтры шаблона - это функции PHP, которые обрабатывают шаблон перед его компиляцией. Это удобно для удаления лишних комментариев и прочих ненужных после компиляции данных.
Префильтры могут быть или заргистрированы или загружены из директории плагинов с помощью функции load_filter() или с помощью установки переменной $autoload_filters.
Smarty передаёт фильтру исходный код шаблона в качестве первого аргумента и предполагает, что функция вернёт результат своей работы.
Example 15.2. использование префильтра
Этот пример удалит все комментарии из исходного текста шаблона.
<?php // код в вашем скрипте function remove_dw_comments($tpl_source, &$smarty) { return preg_replace('/<!--#.*-->/U','',$tpl_source); } // регистрация префильтра $smarty->register_prefilter('remove_dw_comments'); $smarty->display('index.tpl'); ?>
См. также register_prefilter(), постфильтры и load_filter().