Smarty es un sistema de plantillas web escrito en PHP . Smarty se promociona principalmente como una herramienta para la separación de responsabilidades . [ 3 ] Smarty está diseñado para simplificar la compartimentación , permitiendo que el front-end de una página web cambie independientemente de su back-end. Idealmente, esto reduce los costos y minimiza los esfuerzos asociados con el mantenimiento del software .
Smarty genera contenido web mediante la inserción de etiquetas especiales dentro de un documento. Estas etiquetas se procesan y se reemplazan con otro código. Las etiquetas son directivas de Smarty que se encuentran entre delimitadores de plantilla . Estas directivas pueden ser variables (indicadas con el símbolo de dólar ($)), funciones, instrucciones lógicas o bucles . Smarty permite a los programadores de PHP definir funciones personalizadas a las que se puede acceder mediante etiquetas Smarty.
Ejemplo inteligente
Dado que Smarty separa PHP de HTML, hay dos archivos: uno contiene el código de presentación (una plantilla HTML, que incluye variables y etiquetas de Smarty) , que podría tener este aspecto:{$title_text|escape}{$body_html}
<!DOCTYPE html> < html lang = "en" > < head > < meta charset = "utf-8" > < title > { $title_text | escape } </ title > </ head ><body> { * Este es un pequeño comentario que no será visible en el código fuente HTML * } { $body_html } </body> < ! -- este es un pequeño comentario que se verá en el código fuente HTML -- > </html>La lógica de negocio para utilizar la plantilla Smarty anterior podría ser la siguiente:
define ( 'SMARTY_DIR' , 'smarty-2.6.22/' ); require_once ( SMARTY_DIR . 'Smarty.class.php' );$smarty = new Smarty (); $smarty -> template_dir = './templates/' ; $smarty -> compile_dir = './templates/compile/' ;$smarty -> assign ( 'title_text' , 'TÍTULO: Este es el ejemplo básico de Smarty ...' ); $smarty -> assign ( 'body_html' , '<p>CUERPO: Este es el mensaje configurado usando assign()</p>' );$smarty -> display ( 'index.tpl' );Lecturas adicionales
- Hasin Hayder; JP Maia; Lucian Gheorghe (2006). Programación y aplicaciones de plantillas Smarty PHP . ISBN 978-1-904-81140-4.
Véase también
Referencias
- ↑ "Registro de CVS que muestra que se agregó README el 8/8/2000" . php.net . Consultado el 6 de octubre de 2025 .
- ↑ "Versión 5.8.4" . 29 de junio de 2026. Consultado el 30 de junio de 2026 .
- ↑ Parr, Terence John (2004). Imponiendo una estricta separación modelo-vista en motores de plantillas . Actas de la 13.ª conferencia internacional sobre la World Wide Web. ISBN 1-58113-844-X.
Enlaces externos
- Sitio web oficial
- Software libre programado en PHP
- Motores de plantillas