El no saber la diferencia entre duplicar y copiar plantilla puede provocar si vas modificar código de una plantilla de joomla no puedas volver a la plantilla original.
Índice de "Copia o duplicado de una plantilla de Joomla"
¿ Cual es la diferencia entre copiar una plantilla o duplicar ?
La gran diferencia entre duplicar y copiar una plantilla en Joomla, al duplicar no crea una nueva plantilla lo que hace es un nuevo registro en la tabla_extensiones y permite utilizar la misma plantilla con distintos parámetros.
Duplicar es una opción que nos facilita el gestor plantillas en:
Es muy útil, cuando queremos utilizar la misma plantilla pero con parámetros distintos en varias secciones de la web.
Por ejemplo:
Tenemos una plantilla que nos permite asignar el color fondo con algún parámetro de la plantilla, pues si duplicamos esta plantilla , podemos tener categorías de la web con colores distintos de fondo sin añadir ninguna linea de código.
Copiar una plantilla de Joomla desde gestor plantillas.
Lo que buscamos es tener otra plantilla con otro nombre y poder modificar el código, y poder adaptarlo a las necesidades del cliente, a su vez plantilla totalmente independiente y que podamos instalar en mas lugares.
Hasta la versión 2.5 este proceso se tenía que hacer de forma manual, es decir ir al directorio de templates y copiar nuestra plantilla, cambiar alguno ficheros, volver a comprimir y instalar como una plantilla nueva.
A partir de 2.5 existe la forma de copiar la plantilla ( generando un nuevo código de la plantilla ) desde el gestor plantilla en la parte administración.
Esto si que hace una copia de los ficheros de la plantilla , generando una nueva plantilla.
- OJO NO SE PUEDE EN TODAS !!!
- No todas las plantillas permiten realizar este proceso, me falta estudiar porque, pero me tengo encontrado alguna plantilla que no lo permite, me imagino que será que el desarrollador de la plantilla tiene que indicarlo.
Aunque no puedo confirmarlo, ya que nosotros tenemos plantillas propias y no hacemos nada especial y si lo permite.
Copio desde el gestor y luego qué?
Una vez copias la plantilla desde el gestor de plantillas en personalizar plantilla, el propio Joomla no crea el directorio con la nueva plantilla.
Ese directorio lo encontramos en templates, ahora ya podemos trastear con plena garantía que tenemos la plantilla original queda tal cual.
Sin miedo a que los cambios que realicemos afecten a la plantilla original.
Copiar una plantilla de Joomla de forma manual
Copiar una plantilla manual, esté método era y es el que utilizamos nosotros habitualmente para hacer una copia de una plantilla y poder trastear con ella, las plantilla que nos nos permiten copiar desde el administrador de Joomla, con este método no tiene medio de evitarlo, ya que es como hacer una plantilla nueva.
A) Decargar los ficheros de la plantilla queremos copiar.
B) Modificar los ficheros que indicamos:
1.- Fichero templateDetails.xml: Este fichero indicamos , el nombre , autor, la versión,las posiciones que va tener , los parámetros.
Tambien indicamos los ficheros y los directorios que vamos a subir.
2.- Ficheros y Directorio de Lenguaje: Modificar el nombre de los ficheros de lenguaje, poniendo el nombre de nuevo que hubiéramos puesto.
No intentes utilizar o dejar los mismos nombres de fichero de lenguaje , eso te va producir tarde o temprano un error, ya que al instalar o desinstalar la plantilla esos ficheros a parte dejarlos en la plantilla , lo mete en las carpetas languages de sites y administrador, por lo que no puede sobrescribirá o borrara el fichero con ese nombre.
C) Instalar Plantilla Nueva:
Antes de hacer este proceso , recomiendo tener una copia de seguridad de la WEB por si hay algo que no funcione correctamente, podamos recuperar lo tenemos hasta ahora.
Una vez instalada, comprueba que funciona todo correctamente, y prueba a desinstalarla y comprobar si la plantilla original también funciona correctamente.
Mas cosas a tener encuentra de las plantillas Joomla
¿Como saber cual es la plantilla que usa Joomla en mi web ?
Esto es algo trivial, pero bueno aun hay gente que lo pregunta, por lo que os comento:
En el gestor plantillas debéis tener un plantilla de sitio como predeterminada, es normalmente es la que usa en toda la web.
Tambien hay quien utiliza varias plantillas para la misma web, algo que para nosotros nos parece una locura, aunque puede surgir la necesidad, esto lo puedes ver gestor plantillas en el campo paginas, donde te podrá:
- "Sin asignar" : Esa plantilla no tiene paginas asignadas.
- "Predeterminada para algunas paginas": Esta plantillas tiene paginas asignadas para esa web.
- "Predeterminada para todas paginas:" Esta plantilla tiene todas las paginas asignadas, lo normal.
Posiciones de nuestra nueva plantilla de Joomla
Lo primero que solemos querer hacer es añadir posiciones a nuestra plantilla, por lo que debemos tener en cuenta un par de cosas.
Recuerda que las posiciones , si cambias o pones un nombre que no utilicen otras plantillas, o la ORIGINAL, los módulos tendrás que ponerlos en esa posición.
Al principio pensábamos que JOOMLA tenía posiciones ya por defecto que tendríamos que poner siempre a la hora crear plantillas, al final nos dimos cuenta que no, que cada creador de plantillas utiliza los nombre de las posiciones de le apetece.
La posiciones una vez puestas en el index.php de la plantilla recuerda que debes añadirlos en templateDetails.xml, se añaden:
<positions>
<position>NombrePosicion</position>
</positions>
La posiciones en index.php :
<jdoc:include type="modules" name="NombrePosicion" style="xhtml" />
El style es algo que debemos tratar en otra entrada, pero debemos saber que hay varios style presentación de los módulos en Joomla , y que además podemos crear nosotros los nuestro personalizados.
El siguiente código lo solemos utilizar para que cuando una posición no tenga asignado modulo, no cree la capa contienes esa POSICIÓN.
<?php if ($this->countModules('NombrePosicion')>0): ?>
<div class="ContenedorPosicion"
<jdoc:include type="modules" name="NombrePosicionr" style="xhtml" />
</div>
<?php endif; ?>
Muy útil para evitar código innecesario en nuestra WEB.
Los errores cometidos habitualmente al modificar un plantilla de Joomla
Como llevamos unas cuantas plantillas montadas y modificadas, queremos anotar los errores que nos surgieron .
¿ No muestra el texto en los parámetros de la plantilla ?
Este error es el que más frecuente deja de funcionar, ya no cambiamos el nombre de los ficheros de language y no ponemos el mismo NOMBRE que pusimos al crear la plantilla.
Además si desinstalamos la plantilla, podremos eliminar los ficheros de lenguaje de la plantilla ORIGINAL si no los cambiamos.
Recuerda que el NUEVO NOMBRE de la plantilla no puede tener espacios y es el que definimos en TemplateDetails.xml en la etiqueta:
<name>NombrePlantilla</name>
También recuerda que la CONSTANTES de lenguaje deben estar siempre en mayúsculas , ya que sino no funcionan.
¿ El CSS nuevo no responde ?
Me surgió varias veces, pero no siempre, aunque recomiendo que cuando subamos una plantilla el nombre del fichero de css sea el mismos de la plantilla para evitar que se repita con otros css de otras plantillas.
Aunque por lógica no debería afectar, pero el tema cache creo recordar que alguna vez me dio la lata varias veces por utilizar el mismo nombre del fichero css.
También recuerda que algunos editores, necesitan un css especial en nuestra plantilla si queremos utilizar sus ESTILOS, aunque no son necesarios.