25/11/09

Manual de Templates para Joomla! 1.5.x - ¿Qué cosas conforman una plantilla de Joomla! 1.5.x?

¿Qué cosas conforman una plantilla de Joomla! 1.5.x?

Bueno creo que aquí empieza realmente lo importante, existen varias cosas que conforman una plantilla de Joomla! 1.5.x, pero básicamente la estructura del mismo es como sigue:

Espero que el grafico les sirva de guía, pero igual tratare de usar una lista ordenada para darles la idea de árbol que debe tener todos los nombres en azul son archivos y en verde carpetas, los que tengan los nombres entre corchetes son archivos opcionales pero ayudan a que nuestra plantilla sea más sólida y profesional:

  • nuestro_template/: Carpeta que contiene todos y cada uno de los archivos y carpetas que conforman la plantilla, esta debe tener el nombre de nuestra plantilla y por favor traten de no usar espacios o tildes en el.

    • templateDetails.xml: Es en cierta medida uno de los archivos más importantes de la plantilla, sobre todo a la hora de la instalación de la misma puede resultar un dolor de cabeza cuando no está bien definido, es básicamente el archivo de información que indica al núcleo de Joomla! 1.5.x (empiezo a casarme de escribirlo completo) que archivos conforman la plantilla, así como su nombre, versión, autor y los derechos con los que esta publicado entre otros. Recuerden que todos los nombres son cAsE sEnsItIvE en otras palabras que si importan las mayúsculas y minúsculas.

    • index.php: Es uno de los archivos más importantes de la plantilla ya que este contendrá la base de la presentación de la plantilla siendo un mapa de ubicación para los distintos módulos y componentes que lo van a conformar, este archivo es el archivo que llama el núcleo de Joomla! 1.5.x a la hora de construir nuestro sitio web.

    • [template_thumbnail.ext]: Es una pre visualización de la plantilla, de unos 200x150 pixeles. Sirve para que vean nuestro diseño desde el administrador sin necesidad de aplicarlo. La .ext del nombre del archivo indica que es la extensión del mismo pudiendo esta ser: .png, .jpg o .gif

    • [favicon.ico]: Si tengo que explicar esto creo que tenemos un problema. Pero si no saben que es: http://es.wikipedia.org/wiki/Favicon

    • [component.php]: Archivo similar al index.php pero en el que se coloca la información necesaria para la creación de las páginas de error.

    • [param.ini]: Este archivo sirve para almacenar los parámetros que hayamos seleccionado para nuestro sitio web, en caso de que no queramos implementar la opcion de parametros para nuestro template, solo basta con dejarlo en blanco.

    • css/: Carpeta que contendrá todos los archivos .css o de estilos
      • template.css: Principal archivo de estilos en base al cual haremos nuestra plantilla, se pueden utilizar otros archivos .css para la construcción de la misma pero este siempre debe existir.

    • [html/]: Carpeta donde se incluirán todos los archivos que sobre escribirán las salidas o visualizaciones predefinidas en el núcleo así como el modulo chrome.

      • [pagination.php]: Archivo en el cual se puede sobrescribir el modulo de paginación del núcleo de Joomla! para personalizarlo de acuerdo a nuestro diseño de sitio.

      • [modules.php]: Archivo que sobrescribir la presentación de los módulos del chrome o para crear nuestros propios módulos de visualización, lo cual explicare más detalladamente después.

      • [com_nombre/]: Todos los componentes tiene la siguiente estructura de nombre com_ (abreviatura de component) seguida de el nombre del componente que deseamos sobrescribir, ejem: com_content (para modificar el componente de contenido ej: secciones, categorías, artículos, página de inicio). Dentro de esta carpeta encontraremos:

        • [nombre_vistas/]: Esta carpeta lleva el nombre de la vista especifica que deseamos sobrescribir, siguiendo con el ejemplo anterior algunas de las opciones de nombre serian: article (para modificar la visualización de los artículos del contenido), category (para modificar la visualización de las categorías del contenido), section (para modificar la visualización de las secciones del contenido) y frontpage (para modificar la visualización de la página de inicio del contenido). Dentro de cada uno de estas vistas tenemos:

          • [nombre_diagramado.php]: Este archivo de extensión .php tiene por nombre el nombre del diagramado (layout) que deseamos sobrescribir dentro de la vista, por ejemplo si la vista del componente contenido que deseáramos sobrescribir fuera la de articulo el nombre de la carpeta (nombre_vista/) seria article y dentro de esta tendríamos que nombrar un archivo .php por cada diagramado que deseáramos sobrescribir del núcleo de Joomla! ejemplo: defaul.php si lo que queremos es sustituir la vista por defecto de nuestros artículos.

      • [mod_nombre/]: Similar a los componentes solo que estos comienzan con mod_ (abreviatura de module) al cual sigue el nombre del modulo que deseamos sobrescribir, a diferencia de los componentes los módulos no poseen vistas por lo que dentro de esta carpeta viene los archivos de diagramado.

        • [nombre_diagramado.php]: Su funcionamiento es similar a los archivos de diagramado de los componentes.

    • images/: Como su nombre lo indica, es la carpeta donde se almacenan todas las imágenes usadas para la construcción de la plantilla.

    • otros/: Podemos crear otras carpetas para mantener cierto orden dentro de nuestra plantilla, por ejemplo yo suelo crear la carpeta javascript/ para almacenar los archivos .js y así no tenerlos flotando por todo lado, también se pueden crear una carpeta swf/ para almacenar las animaciones flash que tengamos o cualquier otra carpeta que nos facilite el trabajo y lo organización de nuestra plantilla y esto no generara ningún problema si es que los declaramos correctamente en el archivo templateDetails.xml.

Nota: Es ideal colocar un archivo index.html completamente en blanco dentro de cada carpeta que creemos para nuestra plantilla incluyendo la raíz (nuestro_template/) por motivos de seguridad y así evitar el mal pase de que nuestro servidor liste los archivos en un index.html generado.

Sé que a primera vista esta estructura puede resultar algo confusa, en especial con nombres como componentes y módulos, pero realmente es mucho más sencillo de lo que parece.

0 comentarios: