Template Postfilter sind Filter, welche auf das Template nach dessen Kompilierung angewendet werden. Postfilter können auf verschiedene Arten geladen werden. Man kann sie registrieren, aus dem Plugin-Verzeichnis mit load_filter() laden oder $autoload_filters verwenden. Smarty übergibt der Funktion als ersten Parameter den Template-Quellcode und erwartet als Rückgabewert den bearbeiteten Quellcode.
Example 15.3. Template Postfilter verwenden
<?php
// fügen Sie folgende Zeilen in Ihre Applikation ein
function add_header_comment($tpl_source, &$smarty)
{
return "<?php echo \"<!-- Created by Smarty! -->\n\" ?>\n".$tpl_source;
}
// registrieren Sie den Postfilter
$smarty->register_postfilter("add_header_comment");
$smarty->display("index.tpl");
?>
{* kompiliertes Smarty Template 'index.tpl' *}
<!-- Created by Smarty! -->
{* Rest des Template Inhalts... *}
Sie auch register_postfilter(), Prefilter und load_filter()
