Introducción al Error AJAX en PrestaShop
Uno de los problemas más frustrantes a los que se enfrentan los administradores de tiendas online es el fallo de comunicación AJAX en el backoffice de PrestaShop. Este error suele aparecer al intentar guardar la configuración de un módulo, actualizar traducciones o gestionar productos, mostrando un aviso genérico de error de servidor o un bucle infinito de carga.
Causas Principales del Error AJAX
El error AJAX se produce cuando la petición asíncrona enviada desde el navegador hacia el servidor (controladores de PrestaShop) no recibe la respuesta esperada en formato JSON. Las causas más comunes son:
- Agotamiento de los recursos del servidor (Límite de memoria RAM o tiempo de ejecución de PHP).
- Conflictos con la reescritura de URLs o reglas en el archivo
.htaccess. - Errores fatales de PHP ocultos que rompen la estructura de la respuesta JSON.
- Problemas con los tokens de seguridad (CSRF / Token mismatch) en el panel de administración.
Método 1: Aumentar los Límites de Memoria y Tiempo de Ejecución en PHP
Las peticiones AJAX de los módulos complejos requieren más recursos. Sigue estos pasos para ampliarlos:
- Accede al panel de control de tu hosting (cPanel o Plesk) y abre el Administrador de Archivos.
- Localiza el archivo
php.inio.user.inien la raíz de tu instalación de PrestaShop. - Modifica o añade las siguientes líneas para incrementar los valores:
memory_limit = 256Mmax_execution_time = 300post_max_size = 64M - Guarda los cambios y recarga el panel de administración de PrestaShop.
Método 2: Activar el Modo Debug para Identificar el Error Oculto
Dado que las respuestas AJAX devuelven un error sin detalles, activar el modo de depuración te permitirá ver el error PHP exacto que está rompiendo la ejecución:
- Entra por FTP o Administrador de Archivos a la ruta
config/de tu PrestaShop. - Edita el archivo
defines.inc.php. - Busca la línea que define
_PS_MODE_DEV_y cámbiala defalseatrue:define('_PS_MODE_DEV_', true); - Guarda el archivo, reproduce el error AJAX en tu backoffice y ahora verás una traza de error detallada en lugar de un mensaje genérico.
Método 3: Regenerar el Archivo .htaccess
Un archivo de configuración de Apache corrupto puede bloquear las llamadas AJAX hacia los controladores del admin:
- Entra al backoffice de PrestaShop y navega hasta Parámetros de la Tienda > Tráfico & SEO.
- Desplázate hasta la sección de URLs amigables y desactívala temporalmente, luego guárdala.
- Vuelve a activarla y pulsa en guardar para forzar la regeneración automática del archivo
.htaccess. - Si no tienes acceso al backoffice, borra o renombra el archivo
.htaccessvía FTP y deja que PrestaShop cree uno nuevo.