Ver Mensaje Individual
  #2 (permalink)  
Antiguo 28/09/2006, 08:30
Avatar de yoseman
yoseman
 
Fecha de Ingreso: diciembre-2003
Ubicación: Alicante (Spain)
Mensajes: 471
Antigüedad: 21 años, 1 mes
Puntos: 5
Las plantillas que utiliza phpBB no son más que unos archivos que contienen código HTML y una serie de variables pasadas desde el script en php que parsee las plantillas que están entre corchetes {}.

Pongamos un ejemplo:

El script includes/page_header.php parsea la plantilla overall_header.tpl

Si echamos un vistazo al script includes/page_header.php podemos ver que a partir de la línea 346 hay una serie de pares referencia valor en un array que posteriormente será sustituido en la plantilla.

Me explico un poco mejor, por ejemplo:
Código que asigna el valor contenido en $board_config['sitename'] a la variable de plantilla(por decirlo de alguna forma) SITENAME, y que en la plantilla se referencia como {SITENAME}
Código:
	'SITENAME' => $board_config['sitename'],
En el tpl como ves se usa la 'variable' SITENAME:
Código:
<td align="center" width="100%" valign="middle"><span class="maintitle">{SITENAME}</span><br /><span class="gen">{SITE_DESCRIPTION}<br />&nbsp; </span>
Una pequeña prueba y para que veas su utilización:
En el archivo includes/page_header.php y después de la línea anteriormente citada escribe lo siguiente(no olvides la coma ya que estamos en mitad de la definición de un array y sino te dará error el intérprete de php)
Código:
'MI_VARIABLE' => "ME LLAMO DERISA",
Escribiendo esta pequeña línea estamos pasando a la plantilla una especie de variable que será cambiada por el valor que le asignemos(obviamente este ejemplo no tiene mucha utilidad se trata de generar cosas que tengan alguna dificultad y requieran programación)

Bien ahora cogemos una línea cualquiera en el lugar que queramos de nuestra plantilla overall_header.tpl y ponemos el siguiente y escueto código:
Código:
{MI_VARIABLE}
Y nos daremos cuenta que hemos creado una pequeña variable que pasamos desde nuestro script a su plantilla.

Y bueno cada script parsea su plantilla, se pueden hacer bloques, pero eso lo dejo porque se hace más complicado el tema y me llevaría un buen rato.


Salu2 ;)
__________________
[+]
[+]