Creación de nuestros propios plugins
Smarty posibilita la creación de nuestros propios plugins, que podrán ser modificadores,
funciones o filtros. La creación de módulos, que luego serán cargados en
las plantillas, requiere del cumplimiento de las reglas indicadas en la documentación.
Cada plugin lo almacenamos dentro del directorio /plugins. El nombre
de los archivos deben tener la siguiente forma tipo_del_plugin.nombre.php. Para
el filtro que creamos antes, debería ser postfilter.footer.php. En cada archivo
insertamos información del tipo del plugin y su funcionamiento. La misma función
debe tener un nombre adecuado, cuyo esquema es smarty_tipo_nombre().
También debemos recordar sobre los parámetros indispensables. Veamos el
Listado 6, donde encontraremos el ejemplo de un plugin listo.
Listado 6: Ejemplo del plugin
<?
/*
* Smarty plugin
* -----------------------------------------
* File: postfilter.footer.php
* Type: postfilter
* Name: footer
* Purpose: Adding a footer at the bottom of the document
* -----------------------------------------
*/
function smarty_postfilter_footer($source, &$smarty) {
return $source."\n\n<p><a href=\"\">Página principal</a></p>
\n\n</body>\n</html>";
}
?>
Ahora, sólo nos falta eliminar la definición de la función footer() del archivo
sgtpep.php y cambiar el método register_postfilter por el load_filter.
Observemos la Figura 6, donde se presenta la página con la descripción del
siguiente álbum The Beatles – “Revolver” – que también utiliza la plantilla
album.tpl.