Solución de problemas comunes en PrestaShop: Errores y fixes
Introducción: ¿Por qué aparecen errores en PrestaShop?
PrestaShop es una de las plataformas de comercio electrónico más potentes y utilizadas del mundo, pero como cualquier software complejo, no está exenta de problemas. Si estás leyendo esto, probablemente te hayas encontrado con algún mensaje de error, una pantalla en blanco o un comportamiento extraño en tu tienda. No te preocupes: la gran mayoría de los errores PrestaShop tienen solución y, en muchos casos, no requieren conocimientos avanzados de programación.
En esta guía completa, vamos a desglosar los problemas PrestaShop más comunes, explicando sus causas y ofreciéndote soluciones paso a paso. El objetivo es que puedas solucionar errores PrestaShop por ti mismo, ahorrando tiempo y dinero en soporte técnico. Vamos a empezar por el más temido de todos.
El temido error: PrestaShop página en blanco (Error 500)
Si alguna vez has visto una prestashop página en blanco, sabes lo frustrante que es. No hay mensaje, no hay pista, solo un vacío blanco donde debería estar tu tienda. Este es, con diferencia, uno de los problemas PrestaShop más reportados.
¿Qué causa la página en blanco?
La causa más común es un error de PHP que está siendo ocultado por la configuración del servidor. Para mantener la seguridad, PrestaShop (o el servidor) a veces muestra una página en blanco en lugar del error real. Otras causas frecuentes incluyen:
- Módulos incompatibles: Un módulo recién instalado o actualizado puede estar generando un conflicto.
- Límite de memoria agotado: Si tu tienda crece, es posible que el límite de memoria de PHP sea insuficiente.
- Errores en archivos del núcleo (Core): Una actualización fallida o una modificación manual incorrecta pueden corromper archivos.
- Problemas con el archivo .htaccess: Este archivo de configuración es crítico y, si está dañado, puede provocar errores.
Solución paso a paso para la página en blanco
Sigue estos pasos en orden, ya que van de lo más simple a lo más complejo.
Paso 1: Activa el modo de depuración (Debug Mode)
Para ver el error real, debes activar el modo de depuración de PrestaShop. Esto te mostrará un mensaje detallado en lugar de la página blanca.
- Accede a tu hosting mediante FTP o el administrador de archivos de tu panel (como Syspanel, al que se accede por el puerto 2106).
- Localiza el archivo
config/defines.inc.phpen la raíz de tu instalación de PrestaShop. - Ábrelo con un editor de texto plano (como el Bloc de notas o Sublime Text).
- Busca la línea que dice
define('_PS_MODE_DEV_', false);. - Cambia el valor
falseportrue. Debe quedar así:define('_PS_MODE_DEV_', true);. - Guarda el archivo y súbelo de nuevo al servidor.
- Recarga tu tienda. Ahora deberías ver un mensaje de error detallado con la causa exacta.
[INFO] Una vez hayas solucionado el problema, es crucial que vuelvas a cambiar el valor a
falsepara evitar que se muestren errores sensibles a tus clientes.
Paso 2: Aumenta el límite de memoria de PHP
Si el error menciona memory exhausted o Allowed memory size, el problema es la memoria.
- Accede a tu panel de control de hosting (Syspanel, por ejemplo).
- Busca la sección de "Gestión de PHP" o "Configuración de PHP".
- Localiza el parámetro
memory_limit. - Auméntalo a
256Mo incluso512Msi tu hosting lo permite. - Guarda los cambios y recarga tu tienda.
Si no encuentras esta opción en tu panel, puedes intentar añadir una línea al archivo config/defines.inc.php (justo después de la línea que editaste antes):
ini_set('memory_limit', '256M');
Paso 3: Comprueba los módulos recientes
Si el error no es de memoria, el culpable podría ser un módulo.
- Ve a la carpeta
modulesen tu servidor. - Renombra la carpeta del módulo que instalaste o actualizaste recientemente (por ejemplo,
ps_googleanalyticsaps_googleanalytics_old). - Recarga tu tienda. Si la página vuelve a funcionar, ese módulo era el problema.
- Contacta con el desarrollador del módulo para obtener una versión compatible o busca una alternativa.
[WARNING] No renombres la carpeta de un módulo que sea esencial para el funcionamiento de tu tienda (como el de pagos o envíos) sin tener un plan claro, ya que podrías dejar inoperativa la tienda.
Paso 4: Regenera el archivo .htaccess
Un archivo .htaccess corrupto también puede causar la página en blanco.
- Conéctate por FTP a tu servidor.
- Localiza el archivo
.htaccessen la raíz de PrestaShop (a veces está oculto, actívale la opción de "mostrar archivos ocultos" en tu cliente FTP). - Descárgalo a tu ordenador como respaldo y luego elimínalo del servidor.
- Ve al panel de administración de PrestaShop (si puedes acceder). Ve a "Parámetros avanzados" > "Rendimiento".
- Haz clic en el botón "Guardar" en la parte inferior (esto regenerará el archivo
.htaccess). - Si no puedes acceder al panel de administración, crea un archivo vacío llamado
.htaccessy súbelo a la raíz. Luego, intenta acceder al panel.
Errores de conexión con la base de datos
Otro de los problemas PrestaShop más habituales es el error de conexión a la base de datos. Verás un mensaje como "Error de conexión a la base de datos" o un enlace para intentar conectarse de nuevo.
Causas y soluciones
Este error indica que PrestaShop no puede comunicarse con MySQL/MariaDB.
Causa 1: Datos de acceso incorrectos
Es posible que las credenciales de la base de datos hayan cambiado o sean incorrectas.
- Accede a tu servidor y localiza el archivo
app/config/parameters.php. - Ábrelo y verifica los valores de
database_host,database_name,database_userydatabase_password. - Compara estos datos con los que tienes en tu panel de control de hosting (Syspanel).
- Si son diferentes, corrígelos y guarda el archivo.
Causa 2: El servidor de base de datos está caído o sobrecargado
A veces el problema no es tuyo, sino del servidor.
- Verifica el estado del servicio de MySQL en tu panel de control.
- Si tienes acceso por SSH, puedes ejecutar
systemctl status mysql(omariadb). - Si está caído, intenta reiniciarlo. Si se sobrecarga constantemente, considera contratar un plan de hosting superior.
Causa 3: Prefijo de tabla incorrecto
PrestaShop permite un prefijo en las tablas (por ejemplo, ps_). Si el prefijo en el archivo de configuración no coincide con el real, habrá errores.
- Revisa el valor de
database_prefixen el archivoparameters.php. - Ve a tu base de datos (phpMyAdmin o similar) y comprueba el prefijo real de las tablas.
- Si no coinciden, corrígelo en el archivo de configuración.
Errores al instalar o actualizar módulos y temas
Instalar módulos es una de las tareas más comunes, pero también puede ser fuente de errores PrestaShop.
Error: "No se puede instalar el módulo" o "El módulo no es válido"
Este error suele deberse a un problema de permisos de archivos o a un conflicto de versiones.
Solución:
- Asegúrate de que la carpeta
modulestenga permisos de escritura (755 o 775). - Verifica que el módulo sea compatible con tu versión de PrestaShop. Un módulo para PrestaShop 1.6 no funcionará en 1.7 o 8.x.
- Descarga el módulo desde la fuente oficial (Addons de PrestaShop) o desde el sitio del desarrollador.
- Si el módulo viene en un archivo ZIP, no lo descomprimas. Súbelo directamente desde el administrador: "Módulos" > "Módulo Manager" > "Subir un módulo".
Error: "El tema no se puede instalar" o "El tema causa errores"
Los temas modifican la apariencia y, si están mal codificados, pueden romper la tienda.
Solución:
- Asegúrate de que el tema sea compatible con tu versión de PrestaShop.
- Verifica que el tema no requiera módulos adicionales que no tienes instalados.
- Si el tema causa una página en blanco, accede al panel de administración y cambia a un tema predeterminado (como "Classic"). Ve a "Diseño" > "Tema y logotipo".
- Desinstala el tema problemático y contacta con su desarrollador.
Errores de caché y rendimiento
PrestaShop tiene un sistema de caché que, a veces, guarda información obsoleta y causa errores extraños.
Síntomas de problemas de caché
- Los cambios en tu tienda no se reflejan.
- Aparecen errores aleatorios que desaparecen al recargar.
- La tienda funciona lenta.
Solución: Limpiar la caché
- Ve a "Parámetros avanzados" > "Rendimiento".
- En la sección "Caché", haz clic en el botón "Vaciar la caché" (o "Limpiar la caché").
- También puedes limpiar la caché de tu servidor, si tienes una capa de caché como Varnish o Memcached.
- Si no puedes acceder al panel de administración, elimina manualmente el contenido de la carpeta
var/cache(en PrestaShop 1.7 y 8.x) ocache(en versiones antiguas). No elimines la carpeta en sí, solo su contenido.
[TIP] Si tienes problemas con la caché de Smarty, en la misma página de "Rendimiento", cambia "Recompilar plantillas" a "Nunca recopilar archivos de plantilla" para forzar que se usen las versiones más recientes, y luego vuelve a cambiarlo a "Recompilar si los archivos han sido actualizados".
Errores de envío de correos electrónicos
PrestaShop necesita enviar correos (confirmaciones de pedido, recuperación de contraseñas, etc.). Si no lo hace, tus clientes no recibirán notificaciones.
Problema: Los correos no se envían
Soluciones:
- Ve a "Parámetros avanzados" > "E-mail".
- Asegúrate de que "Enviar emails" esté en "Sí".
- Prueba con "Usar la función mail() de PHP" en el campo "Método de envío".
- Si eso no funciona, cambia a "Usar SMTP" y configura las opciones de tu proveedor de correo (servidor SMTP, puerto, autenticación, etc.).
- Guarda los cambios y envía un email de prueba.
[WARNING] Si usas SMTP, asegúrate de usar el puerto correcto (587 para TLS, 465 para SSL). Usar el puerto 25 suele estar bloqueado por los proveedores de hosting para evitar spam.
Errores al subir imágenes o productos
Es común tener problemas con las imágenes al crear o editar productos.
Problema: La imagen no se sube o se muestra incorrectamente
Soluciones:
- Formato de imagen: PrestaShop acepta JPG, PNG y GIF. Asegúrate de que tus imágenes no sean demasiado grandes (máximo 2MB por imagen).
- Permisos: La carpeta
imgy sus subcarpetas deben tener permisos de escritura (755 o 775). - Regeneración de miniaturas: Si las miniaturas se ven distorsionadas, ve a "Diseño" > "Tema y logotipo" y haz clic en "Regenerar miniaturas".
- Limpiar la caché de imágenes: En el servidor, elimina el contenido de las carpetas
img/pyimg/c(si existen). Esto forzará a PrestaShop a regenerar todas las miniaturas.
Errores de actualización de PrestaShop
Actualizar PrestaShop es una operación delicada y es fácil que surjan problemas PrestaShop durante el proceso.
Error: "La actualización falla" o "La tienda se rompe después de actualizar"
Soluciones:
- Haz una copia de seguridad completa (archivos y base de datos) antes de cualquier actualización.
- No actualices directamente de versiones muy antiguas (por ejemplo, de 1.6 a 8.x). Debes hacerlo paso a paso (1.6 -> 1.7 -> 8.x).
- Desactiva todos los módulos de terceros antes de actualizar.
- Usa el asistente de actualización de PrestaShop (módulo "1-Click Upgrade") en lugar de sobrescribir archivos manualmente.
- Si la tienda se rompe después de la actualización, restaura la copia de seguridad y contacta con un profesional.
Preguntas Frecuentes (FAQ) sobre errores PrestaShop
¿Cómo puedo saber qué error tiene mi tienda si veo una página en blanco?
Activa el modo de depuración (_PS_MODE_DEV_ a true en config/defines.inc.php). Esto mostrará el error real en pantalla.
¿Dónde puedo ver los logs de errores de PrestaShop?
Puedes ver los logs en "Informes" > "Logs" en el panel de administración. También puedes revisar los logs del servidor en tu panel de control (Syspanel).
¿Qué hago si no puedo acceder al panel de administración?
Puedes acceder por FTP y desactivar temporalmente los módulos renombrando la carpeta modules a modules_old (si usas PrestaShop 1.7+). Esto debería permitirte acceder al panel. Luego, crea una nueva carpeta modules vacía y ve añadiendo los módulos de uno en uno.
¿Por qué mi tienda se vuelve lenta sin razón aparente?
Causas comunes: caché mal configurada, demasiados módulos activos, imágenes no optimizadas, o un servidor con recursos insuficientes. Revisa el rendimiento en "Parámetros avanzados" > "Rendimiento".
¿Cómo puedo solucionar un error de "500 Internal Server Error"?
Este error es genérico. Activa el modo de depuración para ver el error específico. Si no aparece, revisa los logs del servidor. También puede deberse a un .htaccess corrupto (regenera el archivo) o a un problema de permisos.
¿Qué debo hacer si un módulo de pago no funciona?
Primero, verifica que la configuración del módulo (claves API, moneda, etc.) sea correcta. Luego, asegúrate de que el módulo sea compatible con tu versión de PHP y PrestaShop. Prueba a desactivar otros módulos para descartar conflictos.
Consejos finales para evitar futuros problemas PrestaShop
La prevención es la mejor medicina. Sigue estas buenas prácticas para minimizar los problemas PrestaShop:
- Mantén todo actualizado: PrestaShop, módulos y temas siempre en sus últimas versiones estables.
- Haz copias de seguridad periódicas: Al menos una vez a la semana, y siempre antes de hacer cambios importantes.
- Usa un hosting de calidad: Un buen hosting con soporte para PHP 8.x y MySQL 8.x es fundamental.
- No instales módulos de fuentes no confiables: Los módulos piratas o mal codificados son una fuente común de errores y vulnerabilidades.
- **Limpia la
