Hola a todos,
Estoy trabajando con Smarty y tengo problemas para leer variables de un template a otro. Me explico. Tengo una plantilla .html y dentro de esta hago dos includes de dos archivos diferentes .tpl
En el primer archivo tpl creo variables que necesito que se puedan leer des del segundo archivo tpl pero no se hacerlo.
Pongo el código para que se entienda mejor.
Código del template
Código PHP:
{include file="modules/users/codeAjaxIni.tpl"}
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" >
<head>
{base}
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
{$hola} {* Aquí ya no tiene valor *}
{include file="modules/users/codeAjaxJs.tpl" ajax=$ajax }
</head>
<body>
....
Código de codeAjaxIni.tpl
Código PHP:
{php}
$this->assign("hola","hola");
{/php}
Código de codeAjaxJs.tpl
Código PHP:
{php}
echo "-->>> ".$this->_tpl_vars['hola'];
{/php}
{$hola}
El código que he puesto es mucho más sencillo de lo que es en realidad pero ni aún así me funciona.
Tengo que ponerlo en dos tpl diferentes pq el primero me ha de crear en php un ojbeto ajax antes de cargarse el documento para que no de errores y el segundo contendrá las funciones javascripts y el código para ejecutar las funciones de ajax creado en el primer tpl.
Resumiendo, en el caso que os he puesto, creo la variable $hola para smarty pero ya en la plantilla no la reconoce y en el segundo tpl mucho menos y no se como hacerlo. He provado de poner el código directamente en la plantilla sin estar en tpls aparte y si me funciona pero claro, queda muyyy feo y prefiero separarlo. ¿Como puedo leer o simplemente pasar el valor de la variable de un tpl a otro?
Espero haberme explicado bien jeje
Gracias de antemano