Error 500 en el formulario de contacto tras actualizar a Prestashop 1.7

Recordar que cuando se produce un error 500 en la tienda, el primer paso es habilitar el debug (revisar artículo).

A partir de ese momento, podéis obtener más información del fallo, en un caso que vi por el foro de Prestashop, al usuario le salia la siguiente información:

No template found for …../themes/classic/contact-form.tpl

Fichero contact-form.tpl no encontrado

El error dice que no encuentra el fichero “contact-form.tpl” en el directorio de la plantilla, y tiene razón, es que en Prestashop 1.7, no existe el fichero con ese nombre (revisar ubicación del fichero del formulario de contacto en Prestashop 1.7).

 ¿Dónde se encuentra el fallo?

En este caso particular, el usuario tenía un override del controlador de la sección de contacto  (/override/controllers/front/ContactController….php) que correspondía a la versión anterior de Prestashop y que lógicamente hacia una llamada al fichero contact-form.tpl (de todos modos, él override en cuestión me extrañaría que le estuviera dando un uso “real” más allá de parecer un duplicado del controlador original, porque estaba mal construido internamente).

El controlador puede proceder de algún módulo que estuviera usando, o simplemente uno que creo manualmente.

Puedes probar eliminar o simplemente cambiarle el nombre al fichero por nombreFichero.php_old, y en principio deberías poder acceder al formulario de contacto.

PD: Si el override procede de un módulo especifico, no tiene sentido ni tenerlo desactivado, ni instalado, por lo que deberías desinstalarlo (el módulo).

Documento construido bajo Prestashop 1.7.4.2 tras proceder de una versión anterior a la 1.7.