Herencia fácil de plantillas en PHP ¡y sin volver al Paleolítico!

Herencia fácil de plantillas en PHP ¡y sin volver al Paleolítico!

programador web paelolitico

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”.

A mí en concreto me ocurrió eso después de probar el motor de plantillas de Django, con la potencia y versatilidad que ofrece. ¿Y si os dijera que podéis aprovecharos de sus ventajas sin necesidad de salir de PHP o de aprender un framework nuevo? 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. Ejemplo:

base.php (plantilla padre) page.php (plantilla hija) salida
<?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> <?php include 'base.php' ?> <?php startblock('title') ?> This is the title <?php endblock() ?> <?php startblock('article') ?> This is the article <?php endblock() ?> <html> <body> <h1> This is the title </h1> <div id='article'> This is the article </div> </body> </html>
La clave es que la plantilla hija va a hacer un include del padre, por lo que luego nos limitaremos a sobrescribir los correspondientes bloques de código con starblock y endblock.
Por supuesto, también es necesario que la plantilla base o padre incluya (con require_once) la librería ti.php (sólo consta de este archivo, es así de sencilla). Podéis aplicar la herencia de base.php en tantas páginas como queráis. También podemos hacer herencia de herencias, es decir, convertir una plantilla hija en una plantilla base de otro grupo de plantillas. Las posibilidades son infinitas.

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í.

Previous Framework: ¿Por qué es mejor usarlos?
Next Cómo Internet revolucionó el póker online

About author

Angel
Angel 172 posts

Siempre quise ser inventor y escritor: por lo primero me hice ingeniero, y en cuanto a lo segundo, escribo aquí de vez en cuando sobre telecomunicaciones y tecnología. Me gustan los robots, los perretes y los libros (analógicos).

You might also like

Desarrollo 1Comments

Menus Cortados en Eclipse: Ubuntu 13

Me gustaría compartir con vosotros la manera que encontré de solucionar este Bug que resulta aparecer en Eclipse, en todas sus versiones, para Ubuntu 13. Relacionado

Desarrollo 0 Comentarios

Los lenguajes de programación más utilizados en 2015

Si eres programador, tienes que estar atento siempre a las últimas tendencias y cuáles son los lenguajes de programación más utilizados. En un mundo tan cambiante como el tecnológico, los

Generales 2 Comentarios

4 razones para usar GIT

Git es un sistema de control de versiones que está enfocado en la flexibilidad para los programadores y provee herramientas para gestión de equipos de desarrollo. En su sitio oficial

0 Comentarios

Ningún comentario... todavía ;)

Tú puedes ser el primero en comentar este artículo!

Deja un comentario