Error al guardar productos en Prestashop

enfermo logo 300

Muchos usuarios han reportado un error al guardar productos en Prestashop después de editarlos y hacer alguna modificación. Cuando pulsamos el botón de guardar, la página se recarga, pero ni nos muestra mensaje de guardado exitoso, ni se reflejan los cambios que hemos hecho.

 

Este error ocurre de vez en cuando, tanto al crear como editar productos en las ultimas versiones de Prestashop 1.6 y ha sido detectado por la comunidad de programadores de Prestashop, encontrando una solución sencilla, que requiere una pequeña modificación en el código fuente de Prestashop, pero no de conocimientos de programación si sigues este sencillo tutorial que te explicamos a continuación.

 

¿Qué origina este error al guardar productos?

Uno de los archivos que hacen funcionar el panel de administración de Prestashop, tiene unas líneas de código que a veces hacen que se produzca este error.

No afecta al frotend de la web, sólo a esta funcionalidad de editar y crear nuevos productos. Así que si tienes este problema, debes implementar la solución que comento a continuación en tu tienda.

 

 

SOLUCIÓN

La solución ha sido publicada en el foro oficial de Prestashop.

https://www.prestashop.com/forums/topic/563074-can-only-edit-save-products-sometimes/?p=2429096 (aquí el enlace del Foro), pero te lo explico en detalle:

La solución pasa por editar ese archivo con el código que crea el conflicto dentro de nuestro servidor, localizar el código a eliminar, borrarlo y guardar el archivo.

 

 

PASO 1. Accede a los ficheros de tu tienda

Debes entrar al servidor dónde tienes alojada tu tienda online, para poder navegar por sus directorios hasta el archivo en cuestión para poder editarlo.

Todos los planes de hosting suelen incluir un gestor FTP con el que poder conectar al servidor y ver las carpetas de Prestashop en él. Para ello accede a tu panel de control de hosting y busca Acceso FTP o Acceso a Archivos o algo similar. Allí podrás acceder a las carpetas y archivos en el servidor, o bien, si no contara con esta función, podrás ver los datos (Servidor, usuario y contraseña) para conectar a tu servidor a través de un gestor FTP como Filezilla.

 

PASO 2. Localiza el archivo form.tpl

Una vez dentro de la carpeta dónde tengas el Prestashop instalado, verás una que se llama “adminXXXX” dónde las XXXX són números aleatorios para cada instalación.

Entra en esa carpeta adminXXXX hasta el archivo form.tpl siguiendo la siguiente ruta:

 

/adminXXXX/themes/default/template/controllers/products/helpers/form/form.tpl

 

Paso 2

 

(Cuidado! la carpeta adminXXXX es el nombre de tu carpeta de admin, en la que las XXXX serán números aleatorios si no has cambiado el nombre, y si es así tendrá el nombre que le hayas puesto, pero el resto de la ruta es la misma en todos los PrestaShop)

Una vez localizado el archivo form.tpl, vamos a editarlo.

 

PASO 3. Buscar y borrar código conflictivo.

Para editar el archivo, pulsa botón derecho del ratón, teniendo el archivo seleccionado, y luego sobre la opción “Ver/Editar”

Se abrirá el archivo con un editor de texto.

Ahora debes buscar en el archivo, las lineas de código a borrar:


submitHandler: function(form) {

form.submit();
},

 

paso3

 

Selecciona las 3 líneas, incluida la “coma” final y asegúrate de que las borras, sin modificar nada más.

 

PASO 4. Subir archivo actualizado al servidor.

Guarda el archivo y actualiza en el servidor. Si has usado Filezilla, al cerrar la ventana del bloc de notas, no saltará un pop-up diciendo que si queremos actualizar el archivo en el servidor. Daremos SI, para que se suba actualizado.

 

Paso 4

 

 

Una vez hecho esto ya sólo queda probar.

 

Entra en el panel de administración de tu Prestashop, ve a productos, edita uno cualquiera (cambia por ejemplo la descripción o el precio) y dale a guardar para ver si se actualizan los cambios. Prueba varias veces para asegurarte que el problema está resuelto. Si funciona, yo lo tienes!

 

Si por el contrario no te funciona, es posible que no hayas actualizado bien el archivo form.tpl en tu servidor, o bien que el error venga por otro lado. Comprueba que el archivo subido no contenga esas lineas que debimos borrar y si no están, el deja tu comentario en el foro de Prestashop para que entre todos encontremos el problema.