Arreglar error de memoria agotada en WordPress
Guía completa para arreglar el error de memoria agotada en WordPress: causas, soluciones paso a paso, aumento de PHP memory limit y buenas prácticas.
Índice
- ¿Qué es el error de memoria agotada en WordPress?
- Síntomas y mensajes comunes del error
- Causas principales del error de memoria
- Comprobar el límite de memoria actual en WordPress
- Aumentar PHP memory limit en wp-config.php
- Ajustar memoria desde php.ini y .htaccess
- Optimizar plugins, temas y consumo de recursos
- Limpieza de base de datos y caché para reducir memoria
- Configuración del servidor y límites del hosting
- Seguridad, copias de seguridad y pruebas
- Buenas prácticas para evitar el error en el futuro
- Preguntas frecuentes
¿Qué es el error de memoria agotada en WordPress?
El error de memoria agotada en WordPress aparece cuando PHP, el lenguaje en el que está desarrollado WordPress, alcanza el límite máximo de memoria asignado por el servidor. Cada proceso que se ejecuta en tu sitio (carga de páginas, plugins, temas, consultas a la base de datos, generación de imágenes, etc.) consume una parte de esa memoria. Cuando la suma de todos esos procesos supera el límite configurado, PHP se detiene y muestra un error fatal.
Este problema es especialmente frecuente en sitios que han ido creciendo con el tiempo, que utilizan muchos plugins, temas pesados o constructores visuales, o que se alojan en planes de hosting compartido con recursos limitados. Aunque el mensaje pueda parecer grave, en la mayoría de los casos se puede solucionar ajustando la configuración de memoria y optimizando el sitio.
En términos simples, el error de memoria agotada significa que tu sitio WordPress intenta hacer más de lo que tu servidor le permite con la memoria disponible. La solución pasa por aumentar el límite de memoria y reducir el consumo innecesario de recursos.
Síntomas y mensajes comunes del error
El error de memoria agotada puede manifestarse de diferentes formas según la configuración del servidor y del entorno. A veces verás un mensaje técnico detallado, y otras solo una pantalla en blanco o un error 500. Reconocer estos síntomas te ayudará a identificar rápidamente que el problema está relacionado con la memoria de PHP.
- Pantalla blanca de la muerte (White Screen of Death) al acceder al sitio o al panel de administración.
- Error 500 (Internal Server Error) sin más detalles visibles en el navegador.
- Imposibilidad de acceder a /wp-admin o a ciertas secciones concretas del panel.
- Errores al actualizar plugins, temas o el propio núcleo de WordPress.
- Fallos al subir imágenes o archivos multimedia de cierto tamaño.
En muchos casos, el mensaje exacto que verás en pantalla o en los registros de error del servidor será similar a uno de los siguientes:
Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate ... bytes) in /ruta/del/archivo.php on line ...PHP Fatal error: Out of memory (allocated ... ) (tried to allocate ... bytes)Allowed memory size of X bytes exhausted, donde X suele corresponder a 64M, 128M, 256M, etc.
Si ves un mensaje con la frase Allowed memory size exhausted o Out of memory, casi con total seguridad estás ante un error de memoria agotada en WordPress y debes revisar el límite de memoria de PHP y el consumo de recursos de tu sitio.
Causas principales del error de memoria
Aunque el mensaje final siempre hace referencia a la memoria, el origen del problema puede ser diverso. Entender las causas más habituales te permitirá aplicar una solución más precisa y evitar que el error reaparezca en el futuro.
- Límite de memoria PHP demasiado bajo: muchos hostings compartidos establecen valores conservadores (por ejemplo, 64M), insuficientes para sitios con plugins pesados o mucho tráfico.
- Plugins mal optimizados o en conflicto: extensiones que consumen demasiados recursos, tienen fugas de memoria o se solapan entre sí pueden disparar el uso de memoria.
- Temas complejos y constructores visuales: plantillas con muchas funcionalidades integradas, sliders, efectos y maquetadores pueden requerir más memoria de la habitual.
- Consultas a la base de datos muy pesadas: búsquedas complejas, informes, plugins de estadísticas o de comercio electrónico pueden generar consultas que cargan grandes volúmenes de datos en memoria.
- Imágenes y archivos muy grandes: procesos de redimensionado, generación de miniaturas o importaciones masivas pueden agotar la memoria disponible.
- Scripts personalizados o código a medida: funciones mal programadas, bucles infinitos o procesos que no liberan memoria correctamente.
- Limitaciones del plan de hosting: algunos proveedores restringen el máximo de memoria que se puede asignar a PHP, independientemente de lo que configures en WordPress.
Antes de aumentar la memoria de forma indiscriminada, conviene revisar qué está consumiendo tantos recursos. A veces, desactivar un solo plugin problemático o optimizar una consulta pesada puede eliminar el error sin necesidad de elevar demasiado el límite de memoria.
Comprobar el límite de memoria actual en WordPress
Antes de modificar nada, es recomendable saber cuál es el límite de memoria actual que tiene asignado tu instalación de WordPress y tu servidor PHP. Esto te ayudará a decidir hasta qué valor necesitas incrementarlo y a verificar después que los cambios se han aplicado correctamente.
Ver el límite desde el panel de WordPress
Algunas instalaciones permiten ver el límite de memoria directamente desde el panel de administración, especialmente si utilizas plugins de información del sistema o de optimización.
- Accede a Escritorio > Herramientas > Salud del sitio (Site Health).
- En la pestaña Información, busca el apartado Servidor o WordPress.
- Localiza el valor PHP memory limit o Límite de memoria de PHP.
Usar un archivo phpinfo()
Si tienes acceso a los archivos del servidor, puedes crear un pequeño script para ver toda la configuración de PHP, incluido el límite de memoria.
- Crea un archivo llamado, por ejemplo,
info.phpen la raíz de tu sitio. - Incluye el siguiente contenido:
<?php phpinfo(); ?>. - Sube el archivo al servidor y accede desde el navegador:
https://tudominio.com/info.php. - Busca el valor memory_limit en la tabla de configuración.
Recuerda eliminar el archivo info.php después de usarlo. Dejarlo accesible puede exponer información sensible sobre la configuración de tu servidor a terceros.
Aumentar PHP memory limit en wp-config.php
La forma más habitual y recomendada de aumentar el límite de memoria para WordPress es a través del archivo wp-config.php. Este archivo controla la configuración principal de tu instalación y permite indicar a WordPress cuánta memoria puede solicitar a PHP, siempre que el servidor lo permita.
Pasos para editar wp-config.php
- Accede a los archivos de tu sitio mediante FTP, SFTP o el administrador de archivos de tu panel de hosting.
- Localiza el archivo
wp-config.phpen la raíz de la instalación de WordPress. - Descarga una copia de seguridad del archivo antes de modificarlo.
- Ábrelo con un editor de texto plano (no uses procesadores de texto como Word).
Código para aumentar la memoria
Dentro de wp-config.php, busca la línea que dice:
/* That's all, stop editing! Happy blogging. */
Justo antes de esa línea, añade una de las siguientes instrucciones, según la memoria que quieras asignar:
define( 'WP_MEMORY_LIMIT', '128M' );define( 'WP_MEMORY_LIMIT', '256M' );define( 'WP_MEMORY_LIMIT', '512M' );(solo si realmente lo necesitas y tu servidor lo soporta)
Para el área de administración, WordPress permite un valor diferente mediante WP_MAX_MEMORY_LIMIT, útil si el error se produce solo en el panel:
define( 'WP_MAX_MEMORY_LIMIT', '256M' );
Si después de añadir estas líneas el error persiste, es posible que tu proveedor de hosting tenga un límite máximo más bajo configurado en el servidor. En ese caso, deberás ajustar la memoria desde php.ini, .htaccess o solicitar al soporte técnico que aumente el límite global de PHP.
Ajustar memoria desde php.ini y .htaccess
Si los cambios en wp-config.php no surten efecto, es probable que el límite de memoria esté controlado directamente por la configuración de PHP en el servidor. Dependiendo del tipo de hosting, podrás modificar estos valores tú mismo o necesitarás la intervención del proveedor.
Modificar el archivo php.ini
El archivo php.ini es el principal fichero de configuración de PHP. No todos los hostings permiten editarlo, pero si tienes acceso, puedes aumentar el límite de memoria de la siguiente forma:
- Localiza el archivo
php.inien tu cuenta de hosting o en el directorio indicado por tu proveedor. - Busca la directiva
memory_limit. - Modifica su valor, por ejemplo:
memory_limit = 256M. - Guarda los cambios y reinicia el servicio de PHP si tu panel lo permite (o espera unos minutos a que se apliquen).
Usar .htaccess para aumentar la memoria
En servidores Apache, también es posible ajustar el límite de memoria desde el archivo .htaccess, situado normalmente en la raíz de tu instalación de WordPress.
- Edita el archivo
.htaccess(haz copia de seguridad antes). - Añade la siguiente línea al final del archivo:
php_value memory_limit 256M. - Guarda los cambios y prueba de nuevo tu sitio.
Ten en cuenta que algunos hostings no permiten modificar directivas de PHP desde .htaccess. Si al guardar recibes un error 500 inmediato, elimina la línea añadida y consulta con tu proveedor.
Siempre que modifiques archivos de configuración del servidor, trabaja con precaución y mantén copias de seguridad. Un pequeño error de sintaxis en .htaccess o php.ini puede dejar tu sitio inaccesible hasta que lo corrijas.
Optimizar plugins, temas y consumo de recursos
Aumentar el límite de memoria suele ser solo una parte de la solución. Si tu sitio consume más recursos de los razonables, el error puede reaparecer incluso con valores de memoria altos. Por eso es fundamental revisar qué elementos están generando la mayor carga y optimizarlos o sustituirlos.
Revisión y limpieza de plugins
- Desactiva todos los plugins temporalmente y comprueba si el error desaparece.
- Actívalos uno a uno para identificar cuál provoca el aumento de consumo de memoria.
- Elimina plugins duplicados en funcionalidad (por ejemplo, varios constructores de páginas o varios plugins de caché).
- Evita plugins muy pesados si no son estrictamente necesarios (estadísticas en tiempo real, backups en el mismo servidor, etc.).
- Mantén todos los plugins actualizados a su última versión estable.
Elegir un tema optimizado
El tema que utilizas también influye en el consumo de memoria. Temas multipropósito con muchas funciones integradas pueden ser más exigentes que temas ligeros y modulares.
- Prueba temporalmente con un tema por defecto de WordPress (por ejemplo, Twenty Twenty-Three) para ver si el error desaparece.
- Si el problema se soluciona con un tema básico, considera cambiar a un tema más ligero y bien optimizado.
- Evita cargar funcionalidades innecesarias desde el tema si puedes cubrirlas con plugins específicos y ligeros.
Un enfoque equilibrado consiste en combinar un tema ligero con un número razonable de plugins bien mantenidos. Esto reduce el consumo de memoria, mejora los tiempos de carga y disminuye la probabilidad de errores fatales por agotamiento de recursos.
Limpieza de base de datos y caché para reducir memoria
Con el tiempo, la base de datos de WordPress acumula revisiones de entradas, borradores automáticos, comentarios spam, transients caducados y otros datos que no siempre son necesarios. Esta acumulación puede hacer que ciertas operaciones requieran más memoria de la deseable, especialmente en sitios con mucho contenido.
Optimizar la base de datos
- Utiliza plugins de optimización fiables (por ejemplo, WP-Optimize, Advanced Database Cleaner) para limpiar revisiones antiguas y datos temporales.
- Elimina tablas huérfanas que hayan dejado plugins desinstalados.
- Optimiza las tablas de la base de datos desde phpMyAdmin o desde el propio plugin de optimización.
- Realiza siempre una copia de seguridad completa antes de hacer cambios en la base de datos.
Configurar y purgar la caché
Un buen sistema de caché reduce la carga sobre PHP y la base de datos, lo que a su vez disminuye el consumo de memoria por petición. Sin embargo, una configuración incorrecta o el uso simultáneo de varios plugins de caché puede generar conflictos.
- Instala un único plugin de caché de confianza (por ejemplo, WP Rocket, W3 Total Cache, WP Super Cache).
- Evita tener más de un plugin de caché activo al mismo tiempo.
- Vacía la caché después de realizar cambios importantes en la configuración de memoria o en el código.
- Si utilizas CDN o caché a nivel de servidor, coordina su configuración con la del plugin de caché de WordPress.
Una base de datos limpia y una caché bien configurada no solo ayudan a evitar errores de memoria agotada, sino que también mejoran el rendimiento general del sitio y la experiencia de usuario, factores clave para el SEO y la conversión.
Configuración del servidor y límites del hosting
Aunque optimices WordPress y ajustes los archivos de configuración, puede que el verdadero cuello de botella esté en las limitaciones impuestas por tu plan de hosting. En entornos compartidos, los proveedores suelen establecer límites estrictos de memoria, CPU y procesos simultáneos para evitar abusos y garantizar la estabilidad del servidor.
Revisar los recursos asignados
- Consulta en el panel de tu hosting (cPanel, Plesk, panel propio) los límites de memory_limit, max_execution_time y otros parámetros de PHP.
- Comprueba si tu plan indica explícitamente la memoria RAM o memoria PHP asignada por proceso.
- Revisa los gráficos de uso de recursos si tu proveedor los ofrece (CPU, memoria, I/O, etc.).
Cuándo contactar con el soporte del hosting
Si has seguido los pasos anteriores y el error persiste, es momento de hablar con el soporte técnico de tu proveedor de alojamiento.
- Indica claramente el mensaje de error que recibes (incluyendo
Allowed memory size exhaustedy el valor mostrado). - Explica qué cambios has realizado en
wp-config.php,php.inio.htaccess. - Pide que confirmen el límite máximo de memory_limit permitido en tu plan.
- Pregunta si es posible aumentar ese límite o si necesitas cambiar a un plan superior (VPS, hosting gestionado, etc.).
En muchos casos, pasar de un hosting compartido básico a un plan con más recursos o a un servidor virtual privado (VPS) resuelve de raíz los problemas recurrentes de memoria, especialmente en sitios con alto tráfico, tiendas online o proyectos corporativos complejos.
Seguridad, copias de seguridad y pruebas
Cualquier cambio en la configuración de WordPress o del servidor conlleva cierto riesgo. Para minimizar problemas y poder revertir rápidamente si algo sale mal, es esencial trabajar con una estrategia de copias de seguridad y pruebas controladas.
Realizar copias de seguridad completas
- Antes de editar
wp-config.php,.htaccessophp.ini, descarga una copia de los archivos originales. - Haz un backup completo de la base de datos y de los archivos del sitio mediante tu panel de hosting o un plugin de copias de seguridad.
- Guarda las copias en un lugar externo al servidor (por ejemplo, tu ordenador o un almacenamiento en la nube).
Probar cambios en un entorno de staging
Si tu proveedor de hosting ofrece entornos de staging o pruebas, utilízalos para aplicar y verificar los cambios antes de llevarlos al sitio en producción.
- Clona tu sitio a un entorno de staging.
- Realiza allí los ajustes de memoria y optimización de plugins.
- Comprueba que no aparecen errores y que el rendimiento es adecuado.
- Replica los cambios en el sitio principal una vez verificados.
Trabajar con copias de seguridad y entornos de pruebas no solo te protege frente a errores de configuración, sino que también te permite experimentar con diferentes ajustes de memoria y optimización sin poner en riesgo la disponibilidad de tu sitio.
Buenas prácticas para evitar el error en el futuro
Una vez resuelto el error de memoria agotada en WordPress, es importante adoptar una serie de buenas prácticas para minimizar la probabilidad de que vuelva a ocurrir. La prevención pasa por mantener un sitio ligero, actualizado y bien monitorizado.
- Mantén WordPress, temas y plugins actualizados: las nuevas versiones suelen incluir mejoras de rendimiento y correcciones de fugas de memoria.
- Revisa periódicamente los plugins instalados: elimina los que no uses y sustituye los pesados por alternativas más ligeras cuando sea posible.
- Optimiza imágenes antes de subirlas: utiliza herramientas de compresión y establece límites razonables de tamaño.
- Configura un sistema de caché sólido: reduce la carga sobre PHP y la base de datos, especialmente en sitios con mucho tráfico.
- Monitoriza el rendimiento: emplea herramientas como Query Monitor, New Relic o los informes de tu hosting para detectar cuellos de botella.
- Planifica el crecimiento: si esperas un aumento de tráfico o de funcionalidades, evalúa si tu plan de hosting actual será suficiente.
- Evita modificaciones directas en el núcleo: usa temas hijo y snippets bien probados para personalizaciones, reduciendo el riesgo de código ineficiente.
La clave para no volver a ver el error de memoria agotada es combinar una configuración de servidor adecuada con una gestión responsable de plugins, temas y contenidos. Un mantenimiento preventivo regular suele ser más efectivo y económico que tener que reaccionar ante errores críticos en producción.
Preguntas frecuentes
¿Cuál es el valor recomendado para la memoria de WordPress?
Para sitios pequeños o blogs básicos, 128M suele ser suficiente. Para tiendas online, sitios con constructores visuales o alto tráfico, se recomienda al menos 256M. En proyectos muy grandes o con muchos procesos en segundo plano, puede ser necesario llegar a 512M, siempre que el servidor lo soporte y se justifique por la carga real del sitio.
¿Es peligroso aumentar demasiado la memoria de PHP?
Aumentar la memoria en sí mismo no es peligroso, pero asignar valores excesivamente altos puede enmascarar problemas de código ineficiente o plugins mal optimizados. Además, en servidores con recursos limitados, un valor muy alto por proceso puede afectar al rendimiento global. Lo ideal es encontrar un equilibrio entre un límite suficiente y una buena optimización del sitio.
¿Puedo arreglar el error de memoria agotada sin tocar archivos?
En algunos hostings, es posible aumentar la memoria desde el panel de control, en la sección de configuración de PHP. También hay plugins que intentan ajustar el límite de memoria desde WordPress, pero su eficacia depende de las restricciones del servidor. Si el proveedor impone un límite estricto, será necesario que ellos mismos lo modifiquen o que cambies de plan.
¿Por qué el error aparece solo en el panel de administración?
El área de administración suele cargar más funcionalidades que la parte pública del sitio: editores, constructores, listados de productos, informes, etc. Por eso, a veces el error de memoria agotada se manifiesta solo en /wp-admin. En estos casos, definir WP_MAX_MEMORY_LIMIT con un valor superior puede resolver el problema, junto con la optimización de plugins utilizados en el panel.
¿Cuándo es mejor cambiar de hosting para solucionar estos errores?
Si tras optimizar plugins, temas, base de datos y aumentar la memoria dentro de los límites permitidos sigues recibiendo errores de memoria agotada, es probable que tu sitio haya superado las capacidades de tu plan actual. En ese caso, conviene valorar un hosting especializado en WordPress, un plan con más recursos o un VPS gestionado que te permita configurar la memoria y otros parámetros de forma más flexible.
¿Necesitas asesoramiento legal?
Nuestro equipo de expertos está listo para ayudarte