Template postfilters are PHP functions that your templates are ran through
after they are compiled. Postfilters can be either
registered or loaded
from the plugins directory
by using the
loadFilter()
function or by setting the
$autoload_filters
variable.
Smarty will pass the compiled template code as the first
argument, and expect the function to return the result of the
processing.
Example 17.12. Using a template postfilter
<?php // put this in your application function add_header_comment($tpl_source, Smarty_Internal_Template $template) { return "<?php echo \"<!-- Created by Smarty! -->\n\"; ?>\n".$tpl_source; } // register the postfilter $smarty->registerFilter('post','add_header_comment'); $smarty->display('index.tpl'); ?>
The postfilter above will make the compiled Smarty template
index.tpl
look like:
<!-- Created by Smarty! --> {* rest of template content... *}
See also
registerFilter()
,
prefilters,
outputfilters,
and
loadFilter()
.