Hola gente.
A ver si me podéis echar una manita con esto:
Tengo una plantilla 'miPlantilla.php':
Código php:
Ver original<p><?php echo 'un párrafo'?></p>
...y quiero incluirla en la plantilla general 'plantillaGeneral.php':
Código php:
Ver original<html>
<head><?php echo $titulo ?></head>
<body>
<?php echo $contenido?>
</body>
</html>
...pero sólo si la configuración de 'miPlantilla.php' (miPlantilla.config) lo pide.
El CMV Symfony (de donde he sacado esto) hace lo siguiente (un resumen):
'index.php':
Código php:
Ver original$titulo= 'El título.';
$contenido= include('miPlantilla.php');
Cuando obtengo el contenido de 'miPlantilla' escribe script (a mí me parece lo lógico), con lo que el contenido aparece antes que que la plantilla general y la variable '$contenido' de 'plantillaGeneral.php' no contiene nada
¿Esto que quiero es posible o el ejemplo de Symfony no es más que un ejemplo?
Código original:
Código php:
Ver original//Symfony 1.1 Guía Definitiva
//2.1.2.2 'Los elementos de la vista.' pág.24
//1 Controlador (index.php)
require('vista.php');
//1.2 Parte de la vista en miPlantilla.php
<h1>Lista artículos</h1>
<ul>
<?php foreach($articulos as $articulo): ?>
<li><?php echo $articulo['fecha'] ?></li>
<li><?php echo $articulo['titulo'] ?></li>
<?php endforeach; ?>
</ul>
//1.2 Parte de la lógica (vista.php)
<?php
$titulo= 'Listado de artículos';
$contenido= include('miPlantilla.php');
?>
//1.3 Layout de la vista
<html>
<head>
<title><?php echo $titulo ?></title>
</head>
<body>
<?php echo $contenido ?>
</body>
</html>