Tutoriales WordPress

Pantalla blanca o "error crítico" en WordPress: cómo arreglarlo

Publicado: 4 min de lectura
Contenido de esta guía
  1. Antes de tocar nada
  2. Cómo solucionarlo paso a paso
  3. Las constantes de depuración que debes usar
  4. Si el problema es el tema
  5. Otras causas menos comunes
  6. Cómo evitar que vuelva a pasar

La pantalla blanca de WordPress aparece cuando PHP encuentra un error fatal y no puede terminar de cargar la página. En las versiones actuales, WordPress suele mostrar en su lugar el aviso «Ha habido un error crítico en esta web». En ambos casos, la causa más común es un plugin o un tema que falla, y se arregla encontrándolo y desactivándolo.

Qué vesUna página completamente en blanco, o el mensaje «Ha habido un error crítico en esta web», a veces solo en el escritorio (/wp-admin).
Causas habitualesUn plugin o tema actualizado con un error, incompatibilidad con tu versión de PHP, falta de memoria o un archivo dañado durante una actualización.
SoluciónEntra con el modo de recuperación o lee el registro de errores, identifica al culpable y desactívalo.

Antes de tocar nada

Si todavía puedes, haz un respaldo de los archivos y de la base de datos. Anota también qué cambió justo antes del error: ¿actualizaste un plugin, cambiaste de tema o de versión de PHP? Esa pista suele ahorrar la mitad del trabajo.

Recuerda una regla simple: un cambio a la vez. Si desactivas varios plugins, cambias de tema y subes la memoria al mismo tiempo, no sabrás qué resolvió el problema.

Cómo solucionarlo paso a paso

  1. Busca el correo del modo de recuperación

    Revisa la bandeja de entrada (y el spam) del correo del administrador del sitio. El asunto menciona un problema técnico en tu sitio. Abre el enlace, inicia sesión y WordPress te mostrará qué plugin o tema falló para que lo desactives.

  2. Activa el registro de errores

    Edita wp-config.php y, antes de la línea que dice que dejes de editar, agrega las constantes de depuración que verás más abajo. Así los errores se guardan en un archivo y no se muestran a los visitantes.

  3. Lee el archivo debug.log

    Recarga el sitio y abre wp-content/debug.log. Busca la línea con PHP Fatal error: la ruta que aparece, por ejemplo /wp-content/plugins/nombre-del-plugin/, te dice quién causa el problema.

  4. Desactiva el plugin o el tema culpable

    Renombra su carpeta (por ejemplo, de nombre-del-plugin a nombre-del-plugin.off). Si no sabes cuál es, renombra la carpeta wp-content/plugins completa para desactivarlos todos y comprobar si el sitio vuelve.

  5. Reactiva de a uno y apaga la depuración

    Devuelve el nombre original a la carpeta y reactiva los plugins uno por uno desde el escritorio hasta que reaparezca el error. Cuando termines, vuelve a poner WP_DEBUG en false y borra debug.log.

Las constantes de depuración que debes usar

Agrega estas líneas en wp-config.php, antes del comentario que indica que dejes de editar. Si alguna ya existe, cambia su valor en lugar de duplicarla:

define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );

Con esta combinación, WordPress guarda los errores en wp-content/debug.log sin mostrarlos en pantalla a tus visitantes. Una línea típica del registro se ve así:

PHP Fatal error:  Uncaught Error: Call to undefined function ...
in /home/usuario/public_html/wp-content/plugins/nombre-del-plugin/archivo.php:142

Lo importante es la ruta: todo lo que está después de /plugins/ o /themes/ es el nombre de la carpeta del plugin o del tema que falla.

Si el problema es el tema

Si el registro apunta a /wp-content/themes/, renombra la carpeta del tema activo. WordPress intentará usar otro tema instalado, por eso conviene tener siempre un tema por defecto de WordPress instalado aunque no lo uses. Si no hay ningún otro tema, sube uno por defecto desde wordpress.org a la carpeta wp-content/themes.

Otras causas menos comunes

Lo que dice el registroQué significaQué hacer
Allowed memory size of … exhaustedPHP se quedó sin memoriaSube el límite de memoria y busca qué la consume
Call to undefined function después de cambiar PHPUn plugin o tema no es compatible con esa versión de PHPActualiza el plugin o vuelve temporalmente a la versión anterior de PHP
Failed opening requiredFalta un archivo, a menudo tras una actualización interrumpidaReinstala el plugin, el tema o los archivos de WordPress
El registro está vacíoEl error ocurre fuera de PHP o el registro no se puede escribirRevisa el registro de errores del servidor en tu panel de hosting

Si el registro muestra un error de memoria, sigue la guía sobre el error de límite de memoria de PHP. Si en vez de una página en blanco ves un error 500, revisa la guía del error 500 en WordPress.

Cómo evitar que vuelva a pasar

¿No logras resolverlo?

Si no tienes acceso a los archivos o el registro del servidor muestra errores que no entiendes, el soporte de tu hosting puede revisar tu cuenta directamente. En PremiumHosting, por ejemplo, los planes para WordPress incluyen respaldos diarios que se pueden restaurar si un cambio sale mal.

Guía revisada con WordPress 7.1.

Preguntas frecuentes

¿Qué significa «Ha habido un error crítico en esta web»?

Es el mensaje que muestra WordPress, desde la versión 5.2, cuando ocurre un error fatal de PHP. En lugar de dejar la pantalla en blanco, avisa al visitante y envía al administrador un correo con un enlace al modo de recuperación.

No me llegó el correo del modo de recuperación, ¿qué hago?

Revisa la carpeta de spam y confirma cuál es el correo del administrador en el sitio. Si el servidor no puede enviar correos, no llegará: en ese caso usa el registro de errores y desactiva plugins renombrando carpetas, como explica esta guía.

¿Puedo perder contenido al desactivar plugins así?

No. Renombrar la carpeta de un plugin solo lo desactiva: tus entradas, páginas y ajustes siguen en la base de datos. Algunos plugins pueden perder ajustes al reactivarse, por eso conviene tener un respaldo.

¿Por qué solo el escritorio se ve en blanco y el sitio funciona?

Algunos plugins solo cargan código en el escritorio, así que su error no afecta a la parte pública. El método es el mismo: lee el registro de errores y desactiva el plugin que aparece en él.

¿Es peligroso dejar WP_DEBUG activado?

Sí. Con WP_DEBUG_DISPLAY activo los errores pueden mostrar rutas de tu servidor a cualquier visitante, y el archivo debug.log queda en una carpeta pública. Apágalo y borra el registro apenas termines.