include

Nombre del AtributoTiporequeridoDefaultDescripción
filestringSin/aEl nombre del archivo de template a Incluir.
assignstringNon/aEl nombre de una variable que contendra toda la salida del template.
[var ...][var type]Non/aVariable para pasar localmente a el template

Las etiquetas {include} son usadas para incluir otros templates en el template actual. Cualquier variable disponible en el template actual, también esta disponible dentro del template incluido. La etiqueta {include} debe tener el atributo "file", el cual contiene la ruta del archivo a incluir.

Usted puede opcionalmente pasar el atributo 'assign', el cual especificara el nombre de una variable de template para el cual contendra toda la salida de {include} en vez de mostrarla.

Ejemplo 7-7. funcion {include}

<html>
<head>
  <title>{$title}</title>
</head>
<body>
{include file="page_header.tpl"}

{* el cuerpo del template va aqui *}
{include file="/$tpl_name.tpl"} <-- will replace $tpl_name with value

{include file="page_footer.tpl"}
</body>
</html>

Usted también puede pasar variables al template incluidas como atributos. Cualquier variable pasada al template incluidas como atributos estan disponibles solamente dentro el espacio del template. Las variables pasadas como atributos sobreescriben a las variables del template actual, en el caso en el que estas tengan el mismo nombre.

Ejemplo 7-8. Función {include} pasando variables

{include file="header.tpl" title="Main Menu" table_bgcolor="#c0c0c0"}

{* el cuerpo del template va aqui *}

{include file="footer.tpl" logo="http://my.example.com/logo.gif"}

Donde header.tpl puede ser

<table border='1' width='100%' bgcolor='{$table_bgcolor|default:"#0000FF"}'>
  <tr><td>
    <h1>{$title}</h1>
  </td></tr>
</table>

Ejemplo 7-9. {include} y asignacion de variables

En este ejemplo asignan el contenido de nav.tpl en la variable $navbar, entonces la salida hasta arriba y hasta abajo de pagina.

<body>
{include file="nav.tpl" assign="navbar"}
{include file="header.tpl" title="Main Menu" table_bgcolor="#c0c0c0"}
{$navbar}

{* el cuerpo del template va aqui *}

{include file="footer.tpl" logo="http://my.example.com/logo.gif"}
{$navbar}
</body>

Use la sintaxis de template resources para incluir archivos fuera del directorio $template_dir.

Ejemplo 7-10. Ejemplos de recursos para la función include

{* ruta absoluta *}
{include file="/usr/local/include/templates/header.tpl"}

{* ruta absoluta (lo mismo) *}
{include file="file:/usr/local/include/templates/header.tpl"}

{* ruta absoluta de windows (DEBE usar el prefijo "file:") *}
{include file="file:C:/www/pub/templates/header.tpl"}

{* incluir a partir del recurso de template denominado "db" *}
{include file="db:header.tpl"}

ver también {include_php}, {php}, Template Resources y Componentized Templates.