Solución a error 500 en PrestaShop al usar WordPress
¡Hola! Soy tu técnico de soporte amigable. Hoy vamos a resolver uno de los problemas más temidos al trabajar con PrestaShop y WordPress juntos: el temido error 500. No te preocupes, es un error de servidor que suele ser más fácil de solucionar de lo que parece. Vamos paso a paso, como si estuviéramos viendo la pantalla juntos.
Primero, entendamos qué es este error. El error 500 PrestaShop WordPress es un error interno del servidor. Básicamente, el servidor web (Apache, Nginx, LiteSpeed, etc.) no puede procesar la solicitud de la página web. En PrestaShop, esto suele ocurrir cuando hay un conflicto con un módulo, un tema, un archivo de configuración o, muy comúnmente, al integrar WordPress (por ejemplo, a través de un directorio /blog o mediante un plugin de integración como "PrestaShop WordPress Integration").
¿Por qué aparece el error 500 al usar WordPress con PrestaShop?
Hay varias causas comunes. Te las enumero para que puedas identificarlas rápidamente:
- Conflicto de módulos: Un módulo de PrestaShop (especialmente los que gestionan redirecciones, SEO o seguridad) puede chocar con las reglas de WordPress.
- Archivo .htaccess corrupto: Al instalar WordPress en una subcarpeta (ej.
tuweb.com/blog), las reglas de reescritura pueden sobrescribir o dañar el.htaccessde PrestaShop. - Problemas de memoria PHP: WordPress puede consumir más memoria de la permitida, y si el límite es bajo, el servidor lanza un error 500.
- Incompatibilidad de versiones: Usar una versión antigua de PHP, de PrestaShop o de WordPress puede generar conflictos internos.
- Permisos incorrectos de archivos o carpetas: Si los permisos no son los adecuados, el servidor no puede leer o escribir archivos necesarios.
- Plugin de integración mal configurado: Herramientas como "PrestaShop WordPress Integration" o "PrestaShop to WordPress Bridge" pueden fallar si no se configuran correctamente.
Paso 1: Identificar el error exacto (no te asustes)
Antes de arreglar el error 500 PrestaShop, necesitamos saber qué lo causa. El error 500 es genérico, pero podemos obtener más detalles. Hay dos formas fáciles:
1.1 Activar el modo debug de PrestaShop
Esto te mostrará el error real en pantalla. Edita el archivo config/defines.inc.php de tu instalación de PrestaShop (usa un editor de texto como Notepad++ o el administrador de archivos de tu hosting).
Busca esta línea:
define('_PS_MODE_DEV_', false);
Cámbiala a:
define('_PS_MODE_DEV_', true);
Guarda el archivo y recarga la página. Ahora verás un mensaje más descriptivo (por ejemplo, "Fatal error: Allowed memory size exhausted" o "Class not found"). ¡Importante! Una vez resuelto el problema, vuelve a poner false para que tu tienda no muestre errores a los clientes.
1.2 Revisar los logs del servidor
Si no puedes acceder a PrestaShop, los logs del servidor son tu mejor aliado. Puedes encontrarlos en:
- cPanel: En la sección "Metrics" > "Errors" o "Error Log".
- Syspanel (HestiaCP): Accede a tu panel Syspanel (puerto 2106). Ve a "Advanced" > "Logs" y busca el log de errores de tu dominio (suele llamarse
error.logotu-dominio.error.log). - DirectAdmin: En "Extra Features" > "Error Log".
Busca la línea que coincida con la hora exacta en que viste el error 500. Te dará pistas como "PHP Fatal error: require(): Failed opening required" o "mod_security".
Paso 2: Soluciones rápidas y comunes para arreglar el error 500 PrestaShop
Aquí tienes las soluciones más efectivas, ordenadas de más simple a más compleja.
2.1 Aumentar el límite de memoria PHP
WordPress y PrestaShop juntos pueden necesitar más memoria. Edita el archivo wp-config.php de WordPress (en la raíz de tu instalación de WordPress, no de PrestaShop) y añade esta línea justo antes del comentario "¡Eso es todo, deja de editar!":
define('WP_MEMORY_LIMIT', '256M');
Si el problema persiste, también puedes modificar el archivo php.ini (si tienes acceso) o solicitar a tu hosting que aumente el límite a 256MB o 512MB.
2.2 Deshabilitar temporalmente módulos y plugins conflictivos
Desactiva todos los módulos de PrestaShop que no sean esenciales, especialmente los de SEO, caché y redirecciones. En WordPress, desactiva todos los plugins que estén relacionados con la integración (como "PrestaShop WordPress Integration"). Luego, reactívalos uno por uno para identificar al culpable.
2.3 Restaurar el archivo .htaccess original de PrestaShop
Un .htaccess corrupto es una causa muy común. Haz una copia de seguridad del archivo .htaccess que está en la raíz de tu PrestaShop (no en la carpeta de WordPress). Luego, renómbralo a .htaccess_old y crea uno nuevo vacío. Recarga la página. Si el error desaparece, el problema era el .htaccess. Puedes regenerarlo desde el backoffice de PrestaShop: Parámetros de la tienda > Tráfico y SEO > SEO y URLs > Guardar (esto lo regenera automáticamente).
2.4 Verificar los permisos de archivos y carpetas
Los permisos incorrectos pueden bloquear la lectura de archivos. Los valores recomendados son:
- Carpetas: 755 (rwxr-xr-x)
- Archivos: 644 (rw-r--r--)
- Archivos de configuración (config/settings.inc.php): 644
Puedes cambiarlos desde el administrador de archivos de tu hosting o con un cliente FTP (FileZilla). Si usas Syspanel (HestiaCP, puerto 2106), ve a "File Manager" y selecciona los archivos/carpetas, haz clic derecho y elige "Change Permissions".
2.5 Revisar la integración de WordPress (si usas un plugin)
Si estás usando un plugin para integrar WordPress con PrestaShop (por ejemplo, para mostrar artículos en la tienda), desactívalo temporalmente. Si el error desaparece, la configuración del plugin es incorrecta. Revisa la documentación del plugin, especialmente las rutas de las bases de datos y las claves de API.
Paso 3: Soluciones avanzadas (si lo anterior no funciona)
Si el error persiste, vamos un paso más allá.
3.1 Comprobar la versión de PHP
PrestaShop 1.7 y versiones recientes requieren PHP 7.4 o superior (idealmente 8.0 o 8.1). WordPress también funciona bien con PHP 8.x. Si tu hosting usa PHP 5.6 o 7.0, es muy probable que causes errores. Cambia la versión desde el panel de control:
- cPanel: "Select PHP Version".
- Syspanel (HestiaCP, puerto 2106): Ve a "Advanced" > "PHP Settings" y selecciona la versión.
- DirectAdmin: "PHP Selector".
3.2 Deshabilitar módulos de seguridad (mod_security)
A veces, el firewall del servidor (mod_security) bloquea peticiones legítimas de WordPress dentro de PrestaShop. Puedes deshabilitarlo temporalmente desde el archivo .htaccess de la raíz de PrestaShop. Añade estas líneas al principio:
<IfModule mod_security.c>
SecFilterEngine Off
SecFilterScanPOST Off
</IfModule>
Si el error se soluciona, contacta a tu hosting para que ajusten las reglas de mod_security.
3.3 Revisar los archivos de configuración de WordPress (wp-config.php)
Asegúrate de que las constantes de la base de datos en wp-config.php sean correctas. Si PrestaShop y WordPress comparten la misma base de datos (algo común), verifica que los prefijos de las tablas (ps_ para PrestaShop, wp_ para WordPress) no entren en conflicto. También revisa que la ruta absoluta a WordPress esté bien definida (por ejemplo, define('ABSPATH', '/home/usuario/public_html/blog/');).
3.4 Probar con un tema por defecto de PrestaShop
Cambia temporalmente el tema de tu tienda a uno de los temas por defecto (por ejemplo, "Classic" en PrestaShop 1.7). Si el error desaparece, tu tema personalizado tiene un conflicto con WordPress. Contacta al desarrollador del tema.
Preguntas Frecuentes (FAQ)
P: ¿El error 500 afecta a toda mi tienda o solo a una página?
R: Puede afectar a toda la tienda o solo a páginas específicas. Si solo aparece al cargar la sección de WordPress (ej. /blog), el conflicto está en esa integración. Si es toda la tienda, el problema es global.
P: ¿Puedo perder datos si modifico el .htaccess?
R: No, siempre que hagas una copia de seguridad antes. Si algo sale mal, restauras el archivo original.
P: ¿Debo contratar a un experto si no puedo resolverlo?
R: Si has seguido todos los pasos y el error persiste, puede ser un problema de configuración del servidor. Contacta a tu proveedor de hosting o a un desarrollador especializado en PrestaShop y WordPress.
P: ¿El error 500 puede deberse a un ataque?
R: Es raro, pero posible. Si sospechas de un ataque, revisa los logs en busca de peticiones sospechosas o archivos modificados. Cambia todas las contraseñas y actualiza PrestaShop y WordPress a sus últimas versiones.
[WARNING] Importante: Siempre haz una copia de seguridad completa de tu tienda (archivos y base de datos) antes de hacer cambios drásticos como modificar archivos de configuración o deshabilitar módulos. Puedes usar herramientas como el módulo "PrestaShop Backup" o solicitar a tu hosting una copia de seguridad.
[TIP] Si usas Syspanel (HestiaCP), recuerda que el acceso es por el puerto 2106. Allí puedes gestionar archivos, bases de datos y logs de manera muy sencilla.
Resumen final
Para arreglar el error 500 PrestaShop al usar WordPress, sigue esta checklist:
- Activa el modo debug para ver el error exacto.
- Revisa los logs del servidor (en cPanel, Syspanel o DirectAdmin).
- Aumenta la memoria PHP (en
wp-config.phpophp.ini). - Desactiva módulos y plugins conflictivos.
- Restaura el .htaccess original de PrestaShop.
- Verifica permisos de archivos (755 carpetas, 644 archivos).
- Comprueba la versión de PHP (mínimo 7.4).
- Deshabilita mod_security temporalmente.
- Prueba con un tema por defecto.
Con paciencia y estos pasos, el error 500 desaparecerá. Recuerda que soy tu técnico de soporte amigable, y si tienes dudas, no dudes en consultarme. ¡Tu tienda volverá a funcionar perfectamente!
