Smarty

Primero contest�monos a esta pregunta: �en qu� consiste el funcionamiento de las plantillas? Contienen, en s�, la estructura completa de un documento, al cual se le pasan los valores de ciertas variables. Es comparable al impreso para la declaraci�n de impuestos: es uno s�lo para todas las personas f�sicas, pero cada uno escribe en �l sus propios datos calculados.

En las plantillas de Smarty podemos crear la estructura completa de un documento HTML, y en el lugar donde debe desplegarse el valor de la variable, insertamos el s�mbolo {$var}.

Alguien podr�a decir que esto no es una gran cosa porque se puede obtener ese mismo resultado colocando la funci�n echo dentro del documento, por ejemplo: <?echo $var;?>. Estoy de acuerdo en esto completamente. Pero enseguida vemos que la primera inscripci�n es m�s sencilla y entendible. He aqu� la primera ventaja de Smarty, no la �ltima y la menos importante.

.�Modificadores

Los modificadores funcionan directamente sobre las variables, modificando su apariencia o su contenido. Gracias a ellos podemos desplegar cadenas con la ayuda de letras may�sculas, sustituir en la cadena la palabra indicada por la expresi�n que nos interesa, o acortarla a una longitud concreta. �Por qu� no utilizar funciones de PHP en esta ocasi�n? Utilizando Smarty, el programador debe preocuparse �nicamente por proporcionar los datos se�alados por el dise�ador, y �ste se ocupar� de su formato. De este modo, puede concentrarse tranquilamente en la obtenci�n de la informaci�n necesaria de la base de datos, del archivo o de alguna funci�n. Al mismo tiempo, el dise�ador recibe mejores y significativas posibilidades para el formato del documento, de las que le ofrece HTML. Adem�s de todo esto, no tendr� problemas con usar los modificadores, dado que son m�s entendibles y secillos de usar, con respecto a las funciones correspondientes de PHP.

.�Funciones

Smarty tambi�n posee un conjunto de funciones que le introducen elementos de programaci�n. Gracias a ellos se puede, por ejemplo, leer el contenido de los arrays, crear un contador que estar� numerando las cabeceras consecutivas en el texto o r�pidamente crear una lista de campos opcionales en una sola l�nea de c�digo (!).

Por ejemplo, escribimos:

{html_radios
  name="magazine"
  options=$magazines
  separator="<br />"}

colocamos en la plantilla, a la cual se le transferir� el array asociativo $magazines en la forma de:

$magazines =
  array ("1" => "PHP Solutions",
  "2" => "Linux+");

creando en el documento una lista con la sint�xis siguiente:

<input type="radio" name="magazine"
  value="1" />PHP Solutions<br />
<input type="radio" name="magazine"
  value="2" />Linux+<br />

De paso, conviene mencionar que todo el c�digo creado, gracias a las funciones constru�das en Smarty, se despliega en el est�ndar XHTML. As� deber�a ser por lo menos. En el ejemplo antes mencionado se puede ver que en el interior del tag <input/> se encuentra el atributo name. Las especificaciones de XHTML indican claramente que ese atributo deber�a ser sustitu�do por id. Tambi�n es posible la creaci�n de instrucciones if, por ejemplo; con el objetivo de verificar si la variable que se da a la plantilla no est� vac�a, esto es:

{if $name != ""}
�Bienvenido!
{else}
�C�mo te llamas?
{/if}

En el ejemplo citado se despliega el r�tulo ��Bienvenido!�, si la variable $name no est� vac�a, o ��C�mo te llamas?� en el caso contrario.

.�Filtros

Si os gusta introducir muchos comentarios en los scripts y documentos HTML, pero no quer�is que alguien los lea, entonces os gustar�n los filtros. Los utilizamos principalmente para limpiar las plantillas de los elementos indicados, antes de ser generado, a partir de ellos, cualquier otro documento. Los filtros tambi�n pueden agregar nuevo contenido en los archivos generados, por ejemplo; un tipo de firma �Realizado con ayuda de Smarty�.

.�Archivos de configuraci�n

Los archivos de configuraci�n permiten definir ciertas variables globales, a las que se acceder� desde todas las plantillas. Creando una plantilla, tenemos la posibilidad de cargar los archivos de configuraci�n y las variables que en ellos se encuentran, las cuales pueden ser utilizadas y modificadas de la misma manera que una variable com�n.

.�Plugins

Smarty es un sistema abierto, f�cil de extender o modificar. Los plugins permiten crear nuestros propios modificadores, funciones y filtros. Tambi�n podemos utilizar plugins construidos y proporcionados por otros. Ya que todo est� en PHP, �nicamente debemos cumplir con las especificaciones que indican los requerimientos que se refieren a la construcci�n de plugins en Smarty.

.�Caching (uso de la cach�)

Las plantillas de Smarty son inteligentes. Si una vez realizamos trabajo y abrimos un documento concreto, �ste queda almacenado y es utilizado en el futuro. Por supuesto, si la plantilla es modificada, el sistema lo descubre por s� solo y vuelve a generar el documento. El trabajo de Smarty puede acelerarse utilizando la cach� (ing. Caching). Esta operaci�n consiste en almacenar el documento en formato HTML, que ser� enviado durante la siguiente llamada al navegador del cliente, sin la necesidad de procesar nuevamente los scripts, o realizar las consultas a la base de datos, por ejemplo.

COMPARTE ESTE ARTÍCULO

COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN LINKEDIN
COMPARTIR EN WHATSAPP
SIGUIENTE ARTÍCULO