Jump to content

Problema para sobreescribir (override) plantillas, css y js de módulos en PS1.5 RC2


ivangoti

Recommended Posts

Hola,

Acabo de empezar a probar PrestaShop 1.5 RC2. Quiero hacer un "override" de un módulo (tpl, css, js), por ejemplo del módulo nativo searchmodule.

 

He leído la documentación de la versión 1.5, en concreto el capítulo Overriding default behaviors, donde dice que los módulos se pueden sobreescribir en las siguientes carpetas:

  • /themes/my_theme/modules/my_module/views/templates/front/my_module.tpl
  • /themes/my_theme/css/modules/my_modules/views/templates/front/my_module.css
  • /themes/my_theme/js/modules/my_modules/views/templates/front/my_module.js

 

El asunto es que la carpeta modules no existe en la carpeta de "mi tema", y lo mismo sucede con las carpetas modules dentro de las carpetas css y js dentro de mi tema. El módulo blocksearch está instalado, y en la documentación dice que estas carpetas están disponible tan pronto como el módulo es instalado.

 

Entonces, ¿cómo sobreescribo un módulo? ¿O tengo que crear esas carpetas?

 

 

Gracias

Link to comment
Share on other sites

Hola,

Acabo de empezar a probar PrestaShop 1.5 RC2. Quiero hacer un "override" de un módulo (tpl, css, js), por ejemplo del módulo nativo searchmodule.

 

He leído la documentación de la versión 1.5, en concreto el capítuloOverriding default behaviors, donde dice que los módulos se pueden sobreescribir en las siguientes carpetas:

  • /themes/my_theme/modules/my_module/views/templates/front/my_module.tpl
  • /themes/my_theme/css/modules/my_modules/views/templates/front/my_module.css
  • /themes/my_theme/js/modules/my_modules/views/templates/front/my_module.js

El asunto es que la carpeta modules no existe en la carpeta de "mi tema", y lo mismo sucede con las carpetas modules dentro de las carpetas css yjs dentro de mi tema. El módulo blocksearch está instalado, y en la documentación dice que estas carpetas están disponible tan pronto como el módulo es instalado.

 

Entonces, ¿cómo sobreescribo un módulo? ¿O tengo que crear esas carpetas?

 

 

Gracias

 

Tienes que crear las carpetas.

Link to comment
Share on other sites

He probado a por ejemplo modificar el archivo css del módulo blocksearch tal como se explica en la documentación, creando la siguiente ruta de directorios:

/themes/mi_tema/css/modules/blocksearch/views/templates/front/blocksearch.css

 

donde mi_tema es el nombre correspondiente a mi tema.

Así NO funciona.

 

Además NO existe la siguiente ruta especificada en la documentación:

/modules/blocksearch/views/templates/front/blocksearch.css

 

a no ser que esta ruta de carpetas también tenga que ser creada, pero entonces no entiendo por qué no viene creada ya por defecto. Porque la ruta existente es la siguiente:

/modules/blocksearch/blocksearch.css

 

 

Por tanto, la única forma en que me ha funcionado es modificando el archivo css en la siguiente ruta directorios (ruta creada por mí):

themes/mi_tema/css/modules/blocksearch/blocksearch.css

 

¿Es esto un error de documentación o un error en los directorios? ¿Sino por qué hay que crear todos esos directorios tanto en los módulos del raíz como en nuestro tema?

 

Gracias

Edited by ivangoti (see edit history)
Link to comment
Share on other sites

He probado a por ejemplo modificar el archivo css del módulo blocksearch tal como se explica en la documentación, creando la siguiente ruta de directorios:

/themes/mi_tema/css/modules/blocksearch/views/templates/front/blocksearch.css

 

donde mi_tema es el nombre correspondiente a mi tema.

Así NO funciona.

 

Además como dice en la documentación NO existe la siguiente ruta:

/modules/blocksearch/views/templates/front/blocksearch.css

 

a no ser que esta ruta de carpetas también tenga que ser creada, pero entonces no entiendo por qué no viene creada ya por defecto. Porque la ruta existente es la siguiente:

/modules/blocksearch/blocksearch.css

 

 

Por tanto, la única forma en que me ha funcionado es modificando el archivo css en la siguiente ruta directorios (ruta creada por mí):

themes/mi_tema/css/modules/blocksearch/blocksearch.css

 

¿Es esto un error de documentación o un error en los directorios? ¿Sino por qué hay que crear todos esos directorios tanto en los módulos del raíz como en nuestro tema?

 

Gracias

No es ningún error, la ruta de directorios, también la debes crear.

Link to comment
Share on other sites

Última duda.

 

En cuanto al módulo blocksearch situado en el raíz, si por ejemplo solo quiero modificar el CSS, ¿elimino el fichero CSS y creo la nueva ruta de directorios /modules/blocksearch/views/templates/front/ donde pego ese mismo CSS? ¿o los dejo duplicados? ¿y el js y el tpl también los meto en la nueva ruta aunque no los quiera modificar?

 

Muchas gracias por la ayuda Nadie

Edited by ivangoti (see edit history)
Link to comment
Share on other sites

Última duda.

 

En cuanto al módulo blocksearch situado en el raíz, si por ejemplo solo quiero modificar el CSS, ¿elimino el fichero CSS y creo la nueva ruta de directorios /modules/blocksearch/views/templates/front/ donde pego ese mismo CSS? ¿o los dejo duplicados? ¿y el js y el tpl también los meto en la nueva ruta aunque no los quiera modificar?

 

Muchas gracias por la ayuda Nadie

 

Hola, lo que yo te comento se hace si ya existe la carpeta dentro de /modules/,

 

Ejemplo el modulo cheque, si te metes en /modules/cheque/

 

Dentro veras una carpeta /views/templates/front/ y dentro un tpl

 

Entonces, lo puedes sobreecribir luego en la carpeta templates, con la estructura mencionada.

 

Ahora si no esta el modulo con la estructura preparada, lo sobreescribes igual que con la 1.4

Link to comment
Share on other sites

  • 2 months later...

Hola, lo que yo te comento se hace si ya existe la carpeta dentro de /modules/,

....................................

 

Entonces, lo puedes sobreecribir luego en la carpeta templates, con la estructura mencionada.

 

Ahora si no esta el modulo con la estructura preparada, lo sobreescribes igual que con la 1.4

 

y como debería ser la estructura de la 1.4?

 

estoy intentando sobrescribir un addresses.tpl para un modulo y no hay manera....

He probado todas estas localizaciones y no me funciona... alguna idea?

 

1 /modules/mymodule

 

2 /themes/mytheme/modules/mymodule

 

3 /modules/mymodule/themes/mytheme

 

4 /modules/mymodule/themes/mytheme/modules/mymodule

Link to comment
Share on other sites

  • 1 month later...

Me uno a la petición de rrdavik. Ya sé que las respuestas son antiguas pero me interesa saber cómo realizar correctamente el override de un módulo.

Para PS 1.5 en adelante.

Partamos de los dos siguientes casos:

1) Queremos personalizar en nuestra plantilla los archivos .tpl, .css, .js e imágenes de un módulo con la antigua estructura de carpetas de 1.4 (todos los archivos metidos en la carpeta /modules/nombre-modulo/).

2) Queremos personalizar en nuestra plantilla los archivos .tpl, .css, .js e imágenes de un módulo con la estructura de carpetas de 1.5 (carpetas .../views/...).

 

Para ambos casos suponer que nuestra plantilla no tenía niguna carpeta del módulo especificado.

 

Como aclaración final, he probado a personalizar módulos con la estructura de carpetas de PS 1.4, que no tenían carpetas creadas en mi plantilla, tanto poniendo la estructura antigua (/themes/mi-tema/modules/mi-modulo/archivo.tpl, ...) y la nueva (/themes/mi-tema/modules/mi-modulo/views/templates/front/archivo.tpl) y no funciona ninguna de las dos.

Tengo activada la recompilación y borro la caché en producción.

 

Gracias de antemano y esperemos que este tema se cierre pronto para poder servir de ayuda a otros que se encuentren en la misma situación.

Edited by minifox (see edit history)
Link to comment
Share on other sites

-----------------------------

Ejemplo 1:

 

Modulo Blocktopmenu

 

Sobreescribir CSS:

 

Copiar fichero:

 

/modules/blocktopmenu/css/superfish-modified.css

 

Y pegar aquí:

 

/themes/default/css/modules/blocktopmenu/css/ (te tienes que crear la estructura de carpetas)

 

-----------------------------

 

Ejemplo 2

 

Modulo HomeFeatured:

 

Sobreescribir CSS:

 

Copiar fichero

 

/modules/homefeatured/homefeatured.css

 

Pegar aquí:

 

/themes/default/css/modules/homefeatured/ (te tienes que crear la estructura de carpetas)

 

-----------------------------

 

Ejemplo 3

 

Sobreescribir JS

 

Copiar fichero:

 

/modules/blocktopmenu/js/superfish-modified.js

 

Pegar aquí:

 

/themes/default/js/modules/blocktopmenu/js/ (te tienes que crear la estructura de carpetas)

 

 

Ejemplo 4

 

Sobreescribir TPL

 

Copiar fichero

 

/modules/productscategory/productscategory.tpl

 

Pegar aquí:

 

/themes/default/modules/productscategory/ (te tienes que crear la estructura de carpetas)

 

---------------------------------------------------------------------------------

 

Ejemplo "Novedad", por ahora meterlos en el override siguiendo los ejemplos anteriores, aunque la estructura sea de este tipo:

 

Por ejemplo, este es un fichero *.tpl

 

/modules/cheque/views/templates/front/payment_execution.tpl

 

El override, depende hacerlo asi:

 

/themes/default/modules/cheque/views/templates/front/payment_execution.tpl

 

Hacerlo asi, por ahora:

 

/themes/default/modules/cheque/payment_execution.tpl

 

Aunque segun la documentación lo ideal seria asi:

 

/themes/default/modules/cheque/views/templates/front/payment_execution.tpl

 

Pero tengo, entendido, que los modulos todavia no estan preparados, por eso recurrimos al override "antiguo estilo", que es el que funciona ahora.

 

---------------------------------------------------------------------------------

Link to comment
Share on other sites

  • 4 weeks later...
  • 7 months later...

Hola a todos,

 

he probado este método con blocktopmenu pero no actualiza la ruta al CSS para tomar el nuevo ¿sabéis qué puede ser?

 

He borrado caché de navegador y de smarty, y he desactivado y vuelto a activar el tema, pero no lo pilla, las rutas son:

 

/themes/electroant/modules/blocktopmenu/css/superfish-modified.css
(en el tema que estoy creando)
 

 

y también en:

/themes/default/modules/blocktopmenu/css/superfish-modified.css
(también lo puse en el tema por defecto pensando que pudiera ser de eso, pero tampoco lo toma de ahí)
 
¿Alguna idea?
 
Saludos y gracias!
Link to comment
Share on other sites

 

Hola a todos,

 

he probado este método con blocktopmenu pero no actualiza la ruta al CSS para tomar el nuevo ¿sabéis qué puede ser?

 

He borrado caché de navegador y de smarty, y he desactivado y vuelto a activar el tema, pero no lo pilla, las rutas son:

 

/themes/electroant/modules/blocktopmenu/css/superfish-modified.css
(en el tema que estoy creando)
 

 

y también en:

/themes/default/modules/blocktopmenu/css/superfish-modified.css
(también lo puse en el tema por defecto pensando que pudiera ser de eso, pero tampoco lo toma de ahí)
 
¿Alguna idea?
 
Saludos y gracias!

 

 

 

Las dos ejemplo que has mostrado son totalmente incorrectos. (Fijate en los que ejemplos que puse arriba)

 

---

 

Correcto seria así:

/themes/default/css/modules/blocktopmenu/css/superfish-modified.css

.Ya que si nos fijamos en la estructura del módulo:

/modules/blocktopmenu/css/superfish-modified.css

Simplemente lo que hacemos es copiar la estructura dentro de:

/themes/default/css/

Por cierto, cierro tema ya que en tu caso tienes que crear un tema nuevo.

 

Crea un nuevo tema para cualquier duda que tengas en caso de que no te funcione.

 

Saludos

Link to comment
Share on other sites

Las dos ejemplo que has mostrado son totalmente incorrectos. (Fijate en los que ejemplos que puse arriba)

 

---

 

Correcto seria así:

/themes/default/css/modules/blocktopmenu/css/superfish-modified.css

.Ya que si nos fijamos en la estructura del módulo:

/modules/blocktopmenu/css/superfish-modified.css

Simplemente lo que hacemos es copiar la estructura dentro de:

/themes/default/css/

Por cierto, cierro tema ya que en tu caso tienes que crear un tema nuevo.

 

Crea un nuevo tema para cualquier duda que tengas.

 

Saludos

 

Añado, que aquí: http://www.prestashop.com/forums/topic/259164-solucionado-menu-horizontal-superior-diferente-para-cada-tienda/?do=findComment&comment=1291384 lo tienes explicado con mas detalle. (Ya que tambien tienes que copiar la carpeta img del modulo, para que no se pierdan la relatividad de las rutas de las imagenes)

 

Saludos,

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...