Solución al error “Fatal error: Allowed memory size of 41943040 bytes exhausted” en WordPress

Posiblemente, al instalar un nuevo plugin, cambiar de plantilla o intentar aprovecharte de las ventajas que PHP7 aporta a nuestras instalaciones WordPress, te has encontrado con que tu Web no funciona y muestra el siguiente mensaje en una página blanca: “Fatal error: Allowed memory size of 41943040 bytes exhausted” seguido de alguna ruta de un fichero de tu WordPress.

Esto es debido a que el plugin/tema en cuestión o el funcionamiento de la Web bajo PHP7 requiere de mayor memoria de la definida por defecto tanto por tu hosting como por la propia instalación de WordPress, la cual es de 40M, de ahí que la Web deje de funcionar al superarse este límite de memoria (41943040 bytes = +40Mb). Pues bien, la solución es muy sencilla ya que bastará con añadir una línea al fichero de configuración de WordPress siguiendo estos pasos:

Definir WP_MEMORY_LIMIT en WordPress

  • Acceder mediante FTP o Gestor de archivos vía web a vuestro servidor
  • Localizar el fichero “wp-config.php” (está en la raiz, no hay que entrar a ninguna sub-carpeta)
  • Descargar/Abrir el fichero para editarlo
  • Ir al final del fichero y añadir una nueva linea en blanco donde copiar-pegar esto: define(‘WP_MEMORY_LIMIT’, ‘128M’);
  • Guardar y subir el fichero modificado

¡Solucionado!. Con esto, vuestro WordPress volverá a estar 100% operativo salvo que vuestro propio hosting sea el que limite este tamaño de memoria. A día de hoy, es ya extraño que el límite de un hosting esté en 32Mb salvo en aquellos de bajo coste o gratuitos. Si es este vuestro caso, no os quedará otra más que contactar con la empresa de hosting y comentarles la opción de que os amplíen esta memoria a 64-128Mb.

“default-constants.php”, solución alternativa

Si esto no os funciona, podéis probar con una segunda alternativa menos recomendada, ya que consiste en modificar un fichero del core de WordPress y, en consecuencia, cuando este se actualice perderéis la modificación y tendréis que recordar volver a llevarla a cabo.

Para ello, deberéis seguir el siguiente procedimiento:

  • Acceder mediante FTP o Gestor de archivos vía web a vuestro servidor
  • Localizar el fichero “/wp-incluides/default-constants.php
  • Localizar la línea donde pone “define(‘WP_MEMORY_LIMIT’, ’40M’);” y cambiar el 40M por 128M (suele ser la línea 41)
  • Guardar y subir el fichero modificado

Linea wp-memory-limit a modificar en DEFAULT-CONSTANTS.PHP
Linea wp-memory-limit a modificar en DEFAULT-CONSTANTS.PHP

Página en blanco al acceder a WordPress

También existe la posibilidad de que vuestro WordPress cargue una página en blanco sin mostrar ningún error. Eso se debe a que no tenéis activo el modo debug en vuestra instalación, el cual muestra cualquier error en el sitio Web que permita identificar el problema (como por ejemplo el de “Fatal error: Allowed memory size…”).

Para que vuestro WordPress muestre los errores que se están generando e impidiendo el funcionamiento correcto de la Web, bastará con repetir el proceso arriba indicado pero añadiendo una nueva línea al fichero wp-config.php con el siguiente comando: @ini_set(‘display_errors’,’On’);

Ahora, si recargáis vuestra página Web, ya se mostrará el/los mensaje/s indicando donde se encuentra el error y, en consecuencia, actuar sobre ello. Veréis como en la gran mayoría de casos se debe al límite de memoria de la instalación de WordPress :)

Solución al error “Fatal error: Allowed memory size of 41943040 bytes exhausted” en WordPress
5 8 votos

Temas

Dedico muchas horas de mi día a día al marketing online, pero aquí también os hablaré de mis hobbies, tecnología y todo aquello que forma parte de mi día a día (y que merece la pena compartir).

¿Algún comentario? :)