Uno de los poderes de Joomla son los módulos. Es algo que permite colocar elementos y contenido en cualquier parte de nuestros sitios.
Los módulos en Joomla
Para organizar algunos elementos y algunos contenidos, Jooma utiliza un sistema de módulos. Estos módulos necesitan posiciones donde colocarlos, luego cada plantilla trae sus propias posiciones de módulos. Hay desarrolladores que meten muchas posiciones de módulo y otros que meten tan pocas que hay veces que resulta complicado maquetar según gusto y necesidades.
Aunque pueda parecer una contradicción, con esto no quiero decir que haya que tener muchas posiciones en la plantilla, simplemente hay que tener las justas y necesarias; ya sabemos que menos es más.
Como vengo diciendo, para poder colocar estos módulos en el sitio que quieres, es necesario que exista una posición para el módulo elegido, el "problema" viene cuando quieres poner alguna cosa en un lugar específico y te encuentras que en la plantilla que tienes, no existe una posición justo donde la necesitas.
Pues te voy a dar una buena noticia, ya que con Joomla crear nuevas posiciones de módulo es sencillo, sobre todo si trabajas con algún framework.
Los frameworks
Existen muchos frameworks para Joomla, pero yo me voy a centrar en dos de los más populares, que son además los que más utilizo para mis proyectos: me refiero a Helix ultimate de Joomshaper y a Astroid framework de Templaza.
Estas plantillas con framework son dos verdaderas navajas suizas para diseñar páginas web, con ellas se pueden crear cualquier tipo de web imaginable con relativa facilidad, ya que están pensadas para que todo sea sencillo e intuitivo, además y salvando excepciones, están bastante bien desarrolladas, además como remate son totalmente gratuitas y cuentan con documentación y soporte. (Al final del tutorial te dejo los enlaces de todo lo que concierne a estas plantillas para que puedas tener más información e incluso puedas descargarlas.)
Creando la nueva posición de módulo
Principalmente, existen tres formas para poder hacer esto:
1. Creando un override:
La primera es creando un override para acto seguido realizar unos cambios en el componente de contenido de Joomla (com_content), claro, esta opción requiere tocar un pelin de código y aunque no es muy complicado, sé que hay gente que le puede echar para atrás. De todas formas, si lo tuyo son los retos y te quieres aventurar a aprender como hacerlo, te dejo un artículo de Valentín García donde te cuenta como hacerlo fácilmente; eso sí, el artículo está en inglés. También puedes complementarlo con otro artículo de mi buen amigo Pablo Arias, que este sí está en español.
2. Utilizando una plantilla con framework:
La segunda es la que trataremos más a fondo en este tutorial, que básicamente es tener instalada una plantilla que tenga un framework, que a su vez permita personalizar los layouts de una manera gráfica, o dicho de otra forma: que se pueda personalizar la estructura general de filas y columnas de la página de una forma visual con un comportamiento similar a un page builder.
3. Instalar un framework sin plantilla:
Luego hay una tercera que el mismo título lo dice, y es instalar un framework sin tener que cambiar la plantilla que tengamos instalada. En este caso la opción que yo conozco es hacerlo con Gantry, que permite la instalación solo del framework sin tener que instalar otra plantilla.
Empezando a crear la nueva posición de módulo:
Para conseguir crear esa posición que nos hace falta, lo primero que hay que hacer es abrir un módulo existente o crear uno nuevo, abrimos el backend de Joomla y seguimos la ruta: Contenido / Módulos del sitio.
Luego abierto el módulo elegido, en la barra lateral derecha existe un campo que se llama Posición. Ahí es donde se tiene que indicar en que posición de la página quieres que se vea el módulo, en cuanto haces clic, se despliega el listado de posiciones existentes para que elijas una (Si tienes instalada más de una plantilla, tienes que tener en cerciorarte que la posición elegida corresponde a la plantilla que tienes como predeterminada, ya que el listado muestra todas las posiciones de todas las plantillas que hay instaladas, esto es fácil, ya que indica a qué plantilla pertenece cada posición)
Aparte de poder elegir en este listado, también tienes la opción de escribir en la casilla. Justo ahí es donde hay que poner el nombre de la nueva posición de módulo que se necesita. El nombre que se ponga no es tiene porque ser nada especial, cualquiera valdría, pero eso sí, te aconsejo que sea un nombre acorde con la posición en la plantilla, por poner un ejemplo llevado al extremo: no tiene sentido nombrar a esa posición pie-de-pagina si luego esa posición se va a encontrar en la parte alta de la página, igual es más coherente llamar a la nueva posición cabecera-central.
Vale, ok, para este tutorial y para explicarlo mejor, vamos a imaginar que la nueva posición se va a llamar posicion-prueba. Eso sí, te recomiendo que el nombre que pongas sea lo más corto posible y no poner acentos ni utilizar la letra eñe.
Sabiendo esto y ya escrito el nombre de la posición en la casilla, lo que queda es darle a la tecla Intro en el teclado. Ahí es donde Joomla hace su magia y crea el nombre para esa nueva posición. Después de hacer esto, si todo ha salido bien y vuelves a abrir el listado, verás que esa posición ahora ya existe.
Asignando su espacio a la nueva posición en los layouts
Claro, hasta este punto de esa posición solo existe el nombre, ya está registrada, ahora hay que crear una posición en el configurador de layouts con ese nombre que se ha creado.
Para ello hay que abrir la plantilla predeterminada e ir a la configuración de los layouts.
En Astroid desde el bakend la ruta sería: Sistema / Plantillas / Estilos de la plantilla del sitio / con un clic abre la plantilla que consta como predeterminada / haces clic en el botón "Opciones de plantilla" y se abre la configuración general de ella.
Ya dentro, hay que ir a la parte de diseños, abrimos la opción diseño y ahora es cuando tenemos ante nosotros la gestión de los layouts.
Solo queda crear la posición que se necesite con el nombre que se ha asignado antes, en este caso hemos dicho que sería "posición-prueba", sin las comillas.
Este builder de layouts te ofrece la posibilidad de crear filas y columnas. Se puede crear una nueva columna para añadir dentro nuevas filas que a su vez crearán las posiciones para los módulos
No te preocupes si te suena complicado porque no lo es, de hecho en el vídeo que acompaña este tutorial te explico como hacerlo, verás que no tiene mucha complicación.
Ya creadas las nuevas posiciones, hay que asignar a alguna de ellas el nombre que teníamos pensado: posicion-prueba en la parte de la página que sea necesario.
Bien, pues si ahora abrimos el módulo que queremos que vaya en esa posición, hay que asignarle la nueva posición creada, no olvidemos asignar en que ítems de menú queremos que se vea ese módulo. Hecho esto si abrimos una de las páginas donde se ha asignado que se vea el módulo, si todo se ha hecho correctamente, veremos que ahí está.
Si por alguna razón no se muestra el módulo en la nueva posición, prueba a activar el plugin Contenido-Cargar módulos. La ruta para activarlo es: Panel de inicio / Plugins (A la derecha del menú principal hay un acceso directo) / Poner en el buscador: Contenido-Cargar módulos / una vez que hayas encontrado el plugin, solo te queda que activarlo.
He hecho un vídeo para que no quede ninguna duda del proceso.
Acceso a las plantillas y frameworks:
Como te he comentado anteriormente, aquí tienes el acceso a la explicación de las características de los tres frameworks, Si abres cualquiera de los tres te lleva a la página donde se encuentran los enlaces a sus respectivas páginas oficiales, así como a los enlaces para su descarga.
Como verás, es muy sencillo crear una nueva posición para los módulos en Joomla. Si quieres aportar algo nuevo o te queda alguna duda, podemos seguir en el foro.
Gracias por estar ahí. Nos vemos en la siguiente ;)