Abres tu sitio y, en lugar de tu página de inicio, aparece una sola frase: «Ha habido un error crítico en esta web.» A veces también aparece en wp-admin, así que ni siquiera puedes iniciar sesión.
Parece alarmante, pero es uno de los problemas de WordPress más fáciles de resolver. Significa que PHP ha encontrado un error fatal y se ha detenido, y en casi todos los casos el culpable es un plugin, tu tema, un cambio de versión de PHP o un límite de memoria. Tu contenido sigue a salvo en la base de datos. Así puedes encontrar la causa y volver a estar en línea.
Puntos clave
- El mensaje de error crítico significa que PHP ha encontrado un error fatal, casi siempre en un plugin, en el tema o tras un cambio de PHP.
- Revisa primero el correo del administrador del sitio: WordPress envía un enlace al modo de recuperación que indica el plugin o el tema responsable.
- Si no hay correo, activa WP_DEBUG_LOG y busca en wp-content/debug.log el archivo que ha fallado.
- Desactiva un plugin cambiando el nombre de su carpeta, o todos a la vez con WP-CLI, sin necesidad de wp-admin.
- Si no encuentras la causa rápidamente, restaura la última copia de seguridad anterior al error y después soluciónalo con calma en un entorno de staging.
Lo primero: ¿qué ha cambiado? Piensa en lo último que ocurrió antes del error: la actualización de un plugin o del tema, un plugin nuevo, un cambio de versión de PHP, código modificado. Normalmente esa es la causa, y te indica dónde mirar primero.
Paso 1: busca el correo del modo de recuperación
Cuando WordPress encuentra un error fatal, envía un correo a la dirección del administrador del sitio con el asunto «Tu sitio está experimentando un problema técnico». El correo indica el plugin o el tema que ha fallado e incluye un enlace especial al modo de recuperación.
Abre el enlace e inicia sesión. WordPress pausa solo el plugin o el tema que da problemas, para que puedas entrar en wp-admin y actualizarlo, sustituirlo o desactivarlo. Si no ves el correo, revisa la carpeta de spam. El enlace caduca pasado un tiempo, pero WordPress envía uno nuevo si el error vuelve a producirse.
Paso 2: lee el error
¿No hay correo? Haz que WordPress registre el error en un archivo. En cPanel, abre el Administrador de archivos, edita wp-config.php en la carpeta de tu sitio y añade estas líneas encima de /* That's all, stop editing! */:
// Log errors to wp-content/debug.log without showing them to visitors
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );Recarga la página que falla y abre wp-content/debug.log. Busca la última línea que empiece por PHP Fatal error. Termina con la ruta de un archivo, y esa ruta te dice quién es el responsable:
wp-content/plugins/plugin-name/...: ese plugin;wp-content/themes/theme-name/...: tu tema;- Allowed memory size ... exhausted: un límite de memoria (consulta el paso 5).
Cuando termines, elimina esas tres líneas para que el registro no siga creciendo. En WebGee también puedes consultar el registro de errores de PHP; nuestra documentación explica dónde encontrarlo.
Paso 3: desactiva el plugin que falla
No necesitas wp-admin para esto. En el Administrador de archivos, ve a wp-content/plugins/ y cambia el nombre de la carpeta del plugin, por ejemplo de slider-pro a slider-pro.off. WordPress no lo encuentra, así que lo desactiva. Recarga tu sitio.
Si no sabes qué plugin es, cambia el nombre de toda la carpeta plugins a plugins.off. Si el sitio vuelve a funcionar, devuélvele su nombre original y cambia el nombre de los plugins uno a uno hasta que reaparezca el error. Con SSH, WP-CLI es más rápido:
# List plugins without loading them (works even when the site is down)
wp plugin list --skip-plugins --skip-themes
# Deactivate one plugin
wp plugin deactivate slider-pro --skip-plugins --skip-themes
# Or deactivate all of them, then reactivate one by one
wp plugin deactivate --all --skip-plugins --skip-themesPaso 4: si es el tema
Cambia el nombre de la carpeta de tu tema activo en wp-content/themes/. WordPress recurre a un tema predeterminado, si hay alguno instalado, y el sitio carga: con otro aspecto, pero funcionando. Después actualiza el tema, o restaura una versión que funcione, y vuelve a activarlo. Mantén siempre al menos un tema predeterminado instalado precisamente por este motivo.
Paso 5: otras causas habituales
Un cambio de versión de PHP
Si el error empezó justo después de actualizar PHP, vuelve primero a la versión anterior: en cPanel, en Select PHP Version; en WordPress Cloud, en Advanced › Developer tools. Después actualiza lo que señalaba el registro y vuelve a probar la versión más reciente de PHP en staging.
Falta de memoria
Si aparece «Allowed memory size exhausted», aumenta el límite de WordPress añadiendo define( 'WP_MEMORY_LIMIT', '256M' ); a wp-config.php, y revisa el valor memory_limit de PHP en Select PHP Version › Options. Eso sí, si un plugin necesita muchísima memoria en cada página, la verdadera solución está en ese plugin.
Una actualización interrumpida
Si una actualización se detuvo a medias, puede que veas un mensaje de mantenimiento o que falten archivos. Elimina el archivo .maintenance de la carpeta del sitio si existe y, a continuación, reinstala el plugin o los archivos del núcleo de WordPress (wp core download --force --skip-content).
Paso 6: si tienes dudas, restaura
Si tu sitio te genera ingresos y no encuentras la causa en unos minutos, restaura la última copia de seguridad anterior al error e investiga después. En el hosting cPanel de WebGee, abre JetBackup, elige un punto de restauración anterior al inicio del problema y restaura los archivos; restaura también la base de datos solo si el cambio la afectó, para no perder pedidos ni comentarios recientes. En WordPress Cloud, restaura el sitio desde sus copias de seguridad a un momento concreto.
Después reproduce el problema en una copia de staging, soluciónalo allí y publícalo cuando funcione.
Lista de comprobación del error crítico
- Anota qué cambió justo antes del error
- Busca el correo «Tu sitio está experimentando un problema técnico» y su enlace de recuperación
- Activa WP_DEBUG_LOG y lee el último error fatal en wp-content/debug.log
- Cambia el nombre de la carpeta del plugin o del tema que señala el registro
- Vuelve a la versión anterior de PHP si el error apareció tras un cambio de PHP
- Aumenta la memoria solo si el registro indica que se agotó
- Restaura una copia de seguridad si necesitas el sitio operativo ya
- Vuelve a desactivar la depuración y prueba la solución en staging
¿Prefieres no hacerlo solo?
Los errores críticos siempre parecen llegar en el peor momento. En WebGee, nuestros ingenieros, disponibles por chat en vivo 24/7, pueden revisar los registros contigo y ayudarte a volver a estar en línea, y las restauraciones de JetBackup y las copias de staging están ahí para cuando las necesites.
Preguntas frecuentes
¿Qué provoca el mensaje «Ha habido un error crítico en esta web»?
Un error fatal de PHP. Las causas habituales son la actualización de un plugin o del tema, un plugin que no es compatible con tu versión de PHP, quedarse sin memoria de PHP o una actualización dañada o incompleta.
No me ha llegado el correo del modo de recuperación. ¿Dónde está?
Se envía a la dirección de correo del administrador que aparece en Ajustes › Generales. Revisa la carpeta de spam y comprueba si esa dirección sigue funcionando. Si tu sitio no envía correos de forma fiable, configura SMTP para recibirlo la próxima vez.
¿Perderé contenido al solucionarlo?
No. Activar la depuración, cambiar el nombre de las carpetas de plugins y cambiar de tema no afectan a tus entradas, páginas ni pedidos, que están en la base de datos. Restaurar una copia de seguridad antigua sí puede afectarlos, así que, si tienes dudas, restaura solo los archivos o exporta antes los pedidos recientes.
¿Puedo solucionarlo sin acceso a wp-admin?
Sí. Todo lo que explica esta guía funciona desde el Administrador de archivos de cPanel o por SSH, que es justo lo que necesitas cuando el propio wp-admin muestra el error.
El error apareció después de cambiar la versión de PHP. ¿Qué hago?
Vuelve a la versión anterior en Select PHP Version de cPanel, o en WordPress Cloud, en Advanced › Developer tools. Después actualiza el plugin o el tema que ha fallado y vuelve a probar la nueva versión en staging.
