Cuando ya has experimentado un framework (como hablábamos en el artículo anterior), volver a programar «a pelo» en cualquier lenguaje se antoja como volver al paleolítico y picar piedra en vez de «teclas».
Sin embargo no es necesario recurrir a un framework completo cuando se trata de extender vistas de forma sencilla.
Os presento la librería Template Inheritance:
Se trata de la herencia de plantillas, una técnica muy útil para fabricar layouts HTML muy reutilizables a lo largo de un proyecto web. Para ello vamos a usar una librería llamada ti.php (Template Inheritance). Veamos cómo funciona:
Heredando vistas HTML
El modo más básico requiere dos plantillas: una actuará de base o padre y la otra será la plantilla hija sobre la que se aplicará la herencia. La plantilla base es un esqueleto HTML que podría contener la estructura básica de nuestro sitio, los scripts y cualquier elemento común a todas las vistas.
Como imaginaréis, esta forma de trabajar nos proporciona mucha flexibilidad incluso aunque no usemos un framework como Symfony o Django. Esperamos que os sea de utilidad y nos contéis vuestra experiencia paleolítica. Podéis descargar Template Inheritance desde aquí.
Base.php (vista padre = plantilla)
<?php require_once 'ti.php' ?>
<html>
<body>
<h1>
<?php startblock('title') ?>
<?php endblock() ?>
</h1>
<div id='article'>
<?php startblock('article') ?>
<?php endblock() ?>
</div>
</body>
</html>
Page.php (vista hija = implementación)
<?php include 'base.php' ?>
<?php startblock('title') ?>
Éste es el título
<?php endblock() ?>
<?php startblock('article') ?>
Éste es el artículo.
<?php endblock() ?>
Resultado HTML
<html>
<body>
<h1>
Éste es el título.
</h1>
<div id='article'>
Éste es el artículo.
</div>
</body>
</html>