Плагины - расширение функционала Smarty
 
  Архитектура версии 2.0 позволяет внедрять плагины, которыми являются
  практически все настраиваемые элементы функционала Smarty. Сюда входят:
  
   функции
   модификаторы
   блоковые функции
   функции компилятора
   префильтры
   постфильтры
   фильтры вывода
   ресурсы
   вставки
  
  За исключением ресурсов, в целях обратной совместимости с предыдущими версиями, сохранена 
  возможность регистрации функций посредством register_* API.
  Если вы не используете  API, а вместо этого модифицируете 
  $custom_funcs, $custom_mods и некоторые другие
  переменные напрямую, тогда вам придется подогнать ваши скрипты под использование
  API или преобразовать добавленную вами функциональность в плагины.
 
   
 
  Как работают плагины
  
   Плагины загружаются только при необходимости. Загруженными окажутся 
   только только те модификаторы, функции,ресурсы и т.п., которые 
   определены в скрипте шаблона. Более того, каждый плагин загружается 
   лишь один раз, даже если у вас имеется несколько различных экземпляров 
   объекта Smarty, выполняемых внутри одного запроса.
  
  
   Пре/постфильтры и фильтры вывода - это отдельный случай. Так как
   они не упоминаются в шаблонах, их необходимо зарегистрировать
   или явно загрузить с помощью API-функций перед обработкой шаблона.
   Порядок исполнения множественных фильтров зависит от порядка, в котором 
   они были зарегистрированы или загружены.
  
  
   В целях оптимизации производительности, под плагины отведена одна 
   специальная директория. Чтобы установить плагин, просто поместите его 
   в эту директорию и Smarty будет использовать его в автоматическом режиме.
  
 
  
 &programmers.plugins.plugins-naming-conventions;
 &programmers.plugins.plugins-writing;
 &programmers.plugins.plugins-functions;
 &programmers.plugins.plugins-modifiers;
 &programmers.plugins.plugins-block-functions;
 &programmers.plugins.plugins-compiler-functions;
 &programmers.plugins.plugins-prefilters-postfilters;
 &programmers.plugins.plugins-outputfilters;
 &programmers.plugins.plugins-resources;
 &programmers.plugins.plugins-inserts;