Introducción
Uno de los dolores de cabeza más comunes para los administradores de tiendas online es encontrarse con una excepción de Smarty en PrestaShop. Este error suele interrumpir la visualización del front office o del back office, mostrando un mensaje críptico que asusta a cualquiera. Afortunadamente, tiene solución si sigues el procedimiento adecuado.
¿Cuáles son las causas de la excepción de Smarty?
Las plantillas de PrestaShop utilizan el motor de renderizado Smarty para compilar el código PHP y HTML. Las causas más frecuentes de este error son:
- Incompatibilidad de sintaxis en un archivo
.tplmodificado recientemente. - Problemas de permisos en la carpeta de caché del servidor.
- Ficheros de caché corruptos tras una actualización de módulo o tema.
Método 1: Vaciar la caché de PrestaShop manualmente
Cuando el panel de administración no responde debido a la excepción, debes limpiar la caché desde el servidor mediante FTP o el Administrador de Archivos de tu Hosting.
- Accede al panel de tu hosting (cPanel, Plesk, etc.) y abre el Administrador de Archivos.
- Navega hasta la raíz de tu instalación de PrestaShop.
- Entra en la carpeta
var/cache/(oapp/cache/según tu versión). - Elimina el contenido de las carpetas
prodydev(asegúrate de no borrar las carpetas en sí, solo su contenido). - Vuelve a cargar tu tienda web en el navegador.
Método 2: Activar el modo debug para identificar el archivo erróneo
Si vaciar la caché no funciona, necesitas ver el error exacto para saber qué archivo está fallando.
- Entra por FTP a tu servidor y busca el archivo
defines.inc.phpubicado enconfig/o edita el archivoapp/config/parameters.php. - Cambia el valor de
_PS_MODE_DEV_defalseatrue. - Guarda los cambios y recarga la página de tu tienda.
- Ahora verás una pantalla detallada con la traza de la excepción de Smarty, indicando la línea exacta y el nombre del archivo
.tplque genera el conflicto.
Método 3: Corregir la sintaxis en la plantilla
Una vez identificado el archivo problemático gracias al modo debug:
- Descarga el archivo
.tplmediante FTP. - Ábrelo con un editor de código como Visual Studio Code o Notepad++.
- Revisa si hay etiquetas mal cerradas, por ejemplo, un
{if}sin su correspondiente{/if}. - Sube el archivo corregido a su ubicación original y desactiva nuevamente el modo debug cambiando el valor a
false.