{include_php}
Nota técnica:
{include_php} es muy desaprovechado desde Smarty, usted puede
lograr la misma funcionalidad por medio de las funciones de
costumbre del template.
La unica razón para usar {include_php} es si usted en realidad tiene
la necesidad de poner en cuarentena la funcion de php fuera del
directorio de plugins y
su codigo de la aplicación.
Vea un ejemplo
de templates componentizados para detalles.
Las etiquetas {include_php} son usadas para incluir un script PHP
dentro de su template.
Si la seguridad estuviera activada, entonces
el script PHP debe estar localizado en la ruta $trusted_dir.
La etiqueta include_php debe tener el atributo "file", el cual
contiene la ruta del archivo PHP a ser incluido, o el relativo
al $trusted_dir, o
una ruta absoluta.
Por default, los archivos son incluidos solo una vez a un cuando son
incluidos varias veces en el template. Usted puede especificar que este
sea incluido todas la veces con un atributo once.
Definindo como false incluira el script php cada vez que este sea
incluido en el template.
Usted puede opcionalmente pasar el atributo assign,
el cual especificara una variable del template la cual contendra toda la
salida del {include_php} en vez de mostrarla.
El objeto smarty esta disponible como $this dentro del script php que usted
incluyo.
Ejemplo 7-11. funcion {include_php} load_nav.php
<?php
// carga variables de una base de datos mysql y defíne esta para el template require_once("MySQL.class.php"); $sql = new MySQL; $sql->query("select * from site_nav_sections order by name",SQL_ALL); $this->assign('sections',$sql->record);
?>
|
Donde index.tpl es:
{* ruta absoluta o relativa del $trusted_dir *}
{include_php file="/path/to/load_nav.php"}
{foreach item="curr_section" from=$sections}
<a href="{$curr_section.url}">{$curr_section.name}</a><br />
{/foreach} |
|
Ver también {include},
{php}, {capture}, Template Resources y Componentized Templates