24 de julio de 2008

Joomla: Template override en Joomla 1.5

Una de las funcionalidades que más me ha gustado de Joomla 1.5 es la posibilidad de poder modificar la manera en la que este CMS escribe las páginas sin tener que editar su núcleo principal.

Joomla escribe siempre las páginas utilizando por defecto un anticuado sistema de tablas por lo que lo más normal era editar los ficheros del CMS para que lo escribiese utilizando css puro y duro. Pero claro, al modificar ficheros del núcleo de Joomla con cualquier actualización perdíamos el trabajo hecho. Por no hablar que al tocar ciertas partes del CMS puedes fastidiar partes del mismo sin darte ni cuenta.

Al grano. ¿Cómo se hace?

Vamos a poner un ejemplo en el que tenemos que modificar los estilos del contenido principal de la home.

Tenemos que ir a la carpeta del módulo que queramos modificar (p.ej. com_content), una vez dentro veremos que hay una serie de carpetas, tenemos que fijarnos en la carpeta views. Dentro de esa carpeta veremos una serie de carpetas con los nombres de las diferentes vistas (p.ej. archive, article, etc.). Nos metemos en la carpeta frontpage, que es la que hace referencia al artículo mostrado en la home y una vez dentro copiamos el contenido de la carpeta tmpl.

Nos vamos a continuación a la carpeta de nuestro template y creamos una carpeta llamada html, dentro de ella creamos una carpeta llamada frontpage y dentro esa carpeta pegamos los ficheros que hemos copiado de la carpeta com_content/views/front_page.

Y ya está, estos ficheros tendrán prioridad sobre los del componente, por lo que al modificarlos dentro del template podremos modificar la escritura del contenido sin tener que tocar el núcleo de Joomla. Vale que en Joomla 1.5 el modelo MVC que han utilizado te pone complicado cargarte el CMS editando una vista, pero mejor tener todo separado y ordenado en su template correspondiente.

No hay comentarios: