Jump to content

override template admin?


Recommended Posts

Hola, he visto que en la carpeta override aparece una carpeta templates, concretamente en override/controllers/admin/templates. He pensado que pudiera ser para sobreescribir los .tpl que tenemos en la carpeta templates de la administración.

 

Alguien sabe para que sirve este directorio? He probado a meter el footer.tpl del backoffice y no lo pilla.

 

Saludos

Link to comment
Share on other sites

Hola, he visto que en la carpeta override aparece una carpeta templates, concretamente en override/controllers/admin/templates. He pensado que pudiera ser para sobreescribir los .tpl que tenemos en la carpeta templates de la administración.

 

Alguien sabe para que sirve este directorio? He probado a meter el footer.tpl del backoffice y no lo pilla.

 

Saludos

 

Te recomiendo mirar esta guía: http://doc.prestasho...fault+behaviors, antes de hacer locuras previas )

 

Un Saludo,

Link to comment
Share on other sites

Si, la documentación ya la he leído varias veces pero o no me entero o creo que no viene nada relacionado con lo que he preguntado.

Tengo claro como sobreescribir una clase, un controller y un módulo, pero simplemente mi duda es saber para que sirve esa carpeta templates.

En el caso del front, tengo un theme nuevo, por lo tanto las actualizaciones de prestashop no me afectarán directamente, pero en el caso del theme del backofficce si que me afectan y estaba viendo si habría alguna forma de no tocar el código nativo.

Por lo que he leído por ahí parece ser que esto no se podía hacer en versiones anteriores y esta parece que tampoco, pero como digo, al ver esa carpeta templates pues me surgió la duda de si han corregido algo así que sería muy útil.

Quizás en la parte del BackOfficce también debería duplicar el theme para que no me pise los cambios al actualizar...

Link to comment
Share on other sites

  • 1 month later...

Hola, he visto que en la carpeta override aparece una carpeta templates, concretamente en override/controllers/admin/templates. He pensado que pudiera ser para sobreescribir los .tpl que tenemos en la carpeta templates de la administración.

 

Alguien sabe para que sirve este directorio? He probado a meter el footer.tpl del backoffice y no lo pilla.

 

Saludos

 

Tengo la misma pregunta que tú, ¿has sacado alguna conclusión?

Gracias

Link to comment
Share on other sites

Pues de momento ninguna, mi solución para el admin ha sido duplicar la carpeta default y renombrarla para hacer ahí los cambios. El problema es que prestashop no está preparado para eso y puedes encontrarte con algunos problemas. Yo de momento me ha ido bien, pero para las traducciones hay problemas xq siempre en el BO pilla el tema default, no tiene en cuenta el nuevo.

Link to comment
Share on other sites

  • 4 months later...

Uf! Demasiado complejo lo veo. La verdad que desconozco si eso llevaría a algo útil pero la verdad, meterse a probar eso con el lío que puede ser, me quedo con duplicar la carpeta como he dicho antes y lidiar con problemas únicamente de traducciones, al menos es lo que yo me he encontrado.

Link to comment
Share on other sites

Hombre, partiendo de la base de que prestashop viene preparado para sobrescribir los controladores y las clases y no el theme del BO a poco es más sencillo y natural lo primero.

Para la parte front puedes copiar la carpeta de un theme, cambiarle el nombre y tocarlo lo que quieras y no se crea un módulo para sobreescribirlo. El problema del BO es que no esta preparado para poder elegir entre varios theme, como si lo esta para la parte Front. Por eso el único problema que me he encontrado es a la hora de hacer las traducciones.

Link to comment
Share on other sites

Estaba hablando del concepto, es más fácil sobreescribir una plantilla que un controlador.

 

Evidentemente, si ya está hecho es más sencillo para los que vienen detrás. Pero eso es otro tema.

 

Y si, es muy sencillo machacar archivos pero... cómo distribuyes luego ese cambio? O qué ocurre si quieres actualizar la versión de Prestashop? Para eso están los módulos, para mantener la independencia.

Link to comment
Share on other sites

Creo que o no te has leído los primeros post o no nos estamos entendiendo.

Yo en su día pregunte por sí alguien sabía como hacerlo de alguna forma digamos "proporcionada por prestashop". La solución más sencillas es copiar la carpeta default, la renombras y ya tienes otro theme para el BO. Más sencillo imposible, tal cual como se hace en la parte front. No hace falta machacar nada y con las actualizaciones no pierdes nada.

Link to comment
Share on other sites

Quiero dar las gracias jesa, me has salvado la vida, me encontraba con la misma duda que tu y tu solución me ha servido.

 

Me alegro que te halla servido.

Personalmente mejor solución que esta no la veo, pero evidentemente todas las opiniones son respetables. También creo que es algo que prestashop debería de incluir en sus versiones porque siempre se toca algo que posteriormente se pierde con las actualizaciones.

Link to comment
Share on other sites

Jajajaja, eres el mejor Jesa! Además de programar como nadie, salvas vidas con ello!! Deberían ponerle tu nombre a Prestashop... JesaShop!!

 

Seguro que el lunes sube la bolsa y baja el paro gracias a tu "solución".

Link to comment
Share on other sites

A crear un módulo que pueda "sobreescribir" una plantilla del B.O., igual que se puede hacer con el controlador o con una clase modelo

Yo por lo que veo cuando un módulo sobreescribe un controlador o clase lo que hace Prestashop es copiar esas clases y colocarlas en la carpeta override/ que cuelga de la raiz de la instalación.Si los desinstalas limpia el código.

 

Con lo que me surge la duda de si varios módulos sobrescriben un controlador, como lo gestionará Prestashop?

 

En cualquier caso si tienes acceso al controlador del B.O puedes en principio elegir la plantilla donde se renderizará la vista (sobrescribiendo en el sitio adecuado)

Edited by egomezpe (see edit history)
  • Like 1
Link to comment
Share on other sites

Yo por lo que veo cuando un módulo sobreescribe un controlador o clase lo que hace Prestashop es copiar esas clases y colocarlas en la carpeta override/ que cuelga de la raiz de la instalación.Si los desinstalas limpia el código.

 

Con lo que me surge la duda de si varios módulos sobrescriben un controlador, como lo gestionará Prestashop?

 

En cualquier caso si tienes acceso al controlador del B.O puedes en principio elegir la plantilla donde se renderizará la vista (sobrescribiendo en el sitio adecuado)

 

Como bien dices, cuando instalas un módulo lo que hace es copiar la clase entera al override. Habría que ver los casos concretos, pero si dos métodos sobreescriben la misma clase en el override, casi al 100% lo que te pasará es que el primer módulo te dejará de funcionar. Porque el segundo módulo no va a comprobar si esa clase está modificada, simplemente la pisará y perderás las modificaciones del primer módulo. Si son compatibles entre sí los módulos, te tocaría crear la clase override a mano mergeando las dos clases.

  • Like 1
Link to comment
Share on other sites

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