Añadir y mejorar el sistema de plantillas en CodeIgniter

CodeIgniter utiliza un patrón de diseño llamado MVC (modelo, vista, controlador, por sus siglas en Inglés) donde toda la lógica se lleva a cabo en el modelo, la parte gráfica en la vista, y el controlador es el encargado de unir las dos capas anteriores.

Hasta ahorita vamos bien, pero existe un punto el cual CodeIgniter no ha podido llenar completamente, y es su sistema de plantillas, ya que actualmente es muy básico y tenemos que recurrir a extensiones para lograr un mejor funcionamiento.

Por ejemplo imaginemos que tenemos un layout, el cual es el esqueleto de la aplicación, éste se utilizará en todas las demás paginas.

Un layout podría ser el siguiente.

Como pueden observar esta estructura contiene lo básico para poder mostrar de manera correcta una aplicación web en el navegador.

Si utilizamos CodeIgniter pudiéramos copiar y pegar cuantas veces sea necesario; pero aquí trataremos de mejorar esa técnica.

Primero tenemos que descargar la ultima versión de CodeIgniter en el siguiente enlace:

http://ellislab.com/codeigniter

En mi caso descargué la versión 2.1.3, una vez hecho esto procedemos a descomprimir el archivo en nuestra carpeta htdocs en localhost y a encender el servidor.

Yo he decidido renombrar la carpeta CodeIgniter a plantillas.

Ahora hay que descargar la extensión de CodeIgniter para poder utilizar una librería de plantillas, pueden descargarla desde el siguiente enlace.

https://github.com/philsturgeon/codeigniter-template

Una vez descargado lo descomprimimos y quedará de la siguiente manera.

Después de haber realizado esto lo demás es más sencillo.

Primero, copiamos el archivo template.php de la carpeta config/ a la carpeta application/config/ de CodeIgniter.

Segundo, modificamos la siguiente linea al archivo application/config/autoload.php.

Tercero, copiamos el contenido de la carpeta libraries/ a la carpeta application/libraries/ de CodeIgniter.

Cuarto, modificamos la siguiente linea del archivo /application/config/template.php.

Ahora nos dirigimos a la carpeta application/views/ y creamos una nueva carpeta a la cual le pondremos de nombre layouts/ y dentro de la carpeta creamos un archivo llamado layout.php.

En layout.php escribimos el siguiente código.

Ahora vamos a crear una carpeta en application/views/ y le asignamos el nombre de welcome, dentro de esta carpeta creamos un archivo que se llame body.php e ingresamos el siguiente código.

Listo ahora vayamos a applications/controllers/welcome.php, eliminamos todo el contenido y lo reemplazamos por el siguiente.

Si vamos a la dirección http://localhost/plantillas/ podremos observar que tenemos una aplicación funcional y que está dividido en dos secciones, el cuerpo y la estructura de html.

De esta manera podemos utilizar sólo una plantilla y no tener que estar copiando y pegando código que no es necesario.

Descarga los archivos del tutorial aquí

Descargar

Escrito por Edgar

Soy estudiante de Ciencias Computacionales de la Universidad Autónoma de Nuevo León y desarrollador de software enfocado a la web, especialmente, carritos y tiendas electrónicas.