Desde WordPress 5.3 hay un nuevo sistema de avisos de errores en WordPress que te informa de que «Ha habido un error crítico en esta web», y que el día que lo veas por primera vez te hará entrar en pánico.
Pero nada más lejos, precisamente lo que tienes que hacer es ser metódico y empezar a hacer unas rápidas comprobaciones y aplicar soluciones.
Índice de contenidos
Buscando posibles culpables
Antes de ponerte a hacer «cosas» a lo loco, primero debes pararte un momento y pensar…
- ¿Has instalado o actualizado algún plugin recientemente?
- ¿Has instalado o actualizado el tema activo recientemente?
- ¿Has desactivado o borrado algún plugin o tema?
- ¿Has subido algo por FTP o el gestor de archivos del hosting?
- ¿Has añadido algún código personalizado?
- ¿Has actualizado la versión de WordPress?
- ¿Has cambiado la versión de PHP?
Una vez tengas respuestas para las preguntas anteriores, para asegurar, vamos a realizar un paso previo…
Buscando culpables reales
Para poder analizar posibles errores y, a partir de ahí, determinar qué está provocando los errores críticos de WordPress, lo siguiente que te recomiendo es activar el modo de depuración de WordPress.
Para ello abre el archivo wp-config.php y añade lo siguiente:
// Activamos WP_DEBUG define ( 'WP_DEBUG', true); // Guardamos errores en /wp-content/debug.log define ( 'WP_DEBUG_LOG', true); // Ocultamos errores en pantalla define ( 'WP_DEBUG_DISPLAY', false);
Guarda los cambios, ya ahora tendrás un registro de los errores en el archivo debug.log
, donde podrás analizar si algún plugin o script está generando errores críticos.
Si identificas la ruta de algún plugin que esté generando los errores, ese será un buen candidato para saber por dónde empezar.
Buscando plugins culpables
Si sospechas que el problema lo ha provocado algún plugin está claro por dónde empezar. Y lo primero es desactivarlos todos.
Para ello, accede a la instalación de WordPress por FTP o el gestor de archivos del hosting y renombra la carpeta ‘plugins’. Ponle el nombre que quieras, lo que provocaremos con esta acción es que se desactiven de golpe todos los plugins que tengas activos en tu WordPress.
Accede a tu administración de WordPress, comprueba que están TODOS los plugins inactivos y realiza cualquier acción que antes provocase un error crítico de WordPress para comprobar si sigue pasando.
Si ya no recibes el error crítico puedes dar por hecho que alguno de los plugins es el culpable, para lo que te recomiendo que hagas lo siguiente:
- Vuelve a renombra la carpeta de los plugins a su nombre original.
- Accede a la administración de tu WordPress y activa los plugins uno a uno, y cada vez que actives un plugin comprueba si se genera el error crítico.
- Cuando detectes el plugin que provoca los errores críticos déjalo desactivado, activa el resto, comprobando que ningún otro plugin genera errores críticos.
Arreglando plugins culpables
Si has detectado un plugin, culpable de los errores críticos, mi consejo es que en principio no lo descartes, pues puede que sea el plugin perfecto, y solo por una vez que te genera errores no vas a prescindir de él.
Antes hay que probar si ha sido una reciente actualización la que provoca los errores críticos, y para saberlo nada más fácil.
Accede a la página del plugin, normalmente en WordPress.org y activa la «Vista avanzada».
Abajo del todo de esta página, además de un montón de estadísticas interesantes, verás una zona para descargar versiones anteriores del plugin.
Elige una versión anterior a la que tengas instalada y, una vez descargada, ve al instalador de plugins de tu WordPress y elige la opción de instalar el plugin subiendo el archivo.
Tras hacer clic en el botón de «Instalar ahora» se te mostrará una pantalla en la que puedes sustituir la versión actual por la recién subida, que es lo que deberás hacer, para comprobar si versiones anteriores del plugin no generan errores críticos.
Tras estas comprobaciones, si has detectado que era una versión de uno de los plugins la que provocaba los errores críticos, lo siguiente que debes hacer es avisar al autor del plugin.
Con esto no solo conseguirás el agradecimiento del autor, sino que pronto tendrás una versión actualizada y sin errores de tu plugin favorito.
Buscando temas culpables
Si tras realizar las comprobaciones anteriores ninguno de los plugins es el culpable pasaremos a revisar si el culpable es el tema activo.
La primera comprobación es sencilla, simplemente activa (e instálalo previamente si no lo tenías) uno de los temas de WordPress por defecto, cualquiera de los TwentyAlgo.
Si con el tema por defecto no se producen errores críticos entonces tienes todas las papeletas de que haya sido una actualización de tu tema lo que los provoque.
Arreglando temas culpables
Desafortunadamente no hay una vista avanzada en la página de temas de WordPress.org, y no voy a hacerte navegar por el repositorio de subversion para hacer un proceso manual que puede llegar a ser bastante tedioso.
Así que lo que te propongo es usar un plugin que se llama WP Rollback, que es una joya que te permite retroceder a versiones antiguas de plugins y temas rápida y fácilmente.
Una vez instalado y activo no hay que configurar nada, simplemente ve a la pantalla de administración de temas y, al hacer clic en el tema activo para ver los detalles, verás un nuevo botón llamado «Retroceso».
Al pulsarlo se te mostrará una lista de todas las versiones anteriores del tema, pudiendo elegir a la que quieres volver.
Y, antes de hacer el retroceso, verás una pantalla de advertencia, que nunca está de más recordarte que hagas copias de seguridad antes de modificar elementos vitales de tu web como plugins o temas.
Si estás seguro, el plugin descargará la versión seleccionada y sustituirá la actual por la elegida.
Ahora solo te queda comprobar si ya no hay errores críticos. Si has dado con el problema, como antes, avisa al desarrollador del tema en su foro de soporte.
Buscando códigos personalizados culpables
Si nada de lo anterior funcionó asumiremos que ni los plugins ni los temas son los culpables, y lo siguiente sería comprobar si alguno de tus códigos personalizados tenga alguna incompatibilidad con la versión actual de WordPress, tema, plugins o PHP.
Arreglando códigos personalizados culpables
Para ello, simplemente, borra los códigos personalizados del archivo functions.php del tema o dónde los añadas y comprueba si ya no hay errores críticos de WordPress.
Si se solucionan los errores críticos entonces ya sabes que el culpable es…
- Tu código personalizado.
- … o la versión de PHP, por problemas de compatibilidad entre ambos.
Buscando versiones de PHP culpables
Tanto si los errores críticos de WordPress has detectado que los generaba un plugin, el tema o algún código personalizado, puede que en realidad ninguno de estos fuese el culpable real, sino la versión de PHP que tengas activa.
Porque si un plugin, tema o código usa funciones obsoletas o demasiado avanzadas, incompatibles con la versión de PHP activa en tu servidor, se pueden generar todo tipo de errores, también los errores críticos de WordPress.
Así que yo siempre comprobaría que la culpa no sea de una versión de PHP incorrecta, incompatible con alguno de los elementos (plugins, temas, códigos) de la web.
Arreglando versiones de PHP culpables
El proceso de cambio de versión de PHP, afortunadamente, actualmente es algo trivial en la mayoría de empresas de hosting modernas, que se han adaptado a las nuevas necesidades.
En alguna parte de su panel deberías encontrar una sección en la que cambiar de versión de PHP.
A continuación visita tu web y comprueba a ver si siguen habiendo errores críticos de WordPress o los aviso de depuración (debug) te informan de problemas con códigos obsoletos de algún plugin, tema o código.
Estos avisos de errores te pondrán sobre la pista de plugins o temas que usen funciones obsoletas o no compatibles con la versión de PHP activa/deseable, que siempre debería ser la última estable disponible.
Puedes, momentáneamente, optar por usar una versión de PHP inferior a la recomendable por temas de compatibilidad, pero deberías avisar cuánto antes al desarrollador del plugin/tema para que lo actualice, pues las versiones actuales de PHP son las más seguras y rápidas.
Buscando si el culpable es WordPress
¡Casi se me olvida!
Pues sí, también podría ser WordPress el culpable de un error crítico de WordPress, ha pasado tras algunas actualizaciones, y podría volver a pasar.
No es que WordPress se pruebe poco o mal, es que es imposible hacer un testing completo de la aplicación utilizada por el 40% de las webs del mundo.
Son tantas las combinaciones de plugins, temas, hosting, servidores, que siempre puede pasar que una de ellas provoque errores críticos de WordPress.
Así que, si todo lo anterior ha fallado, toca probar a ver si ha sido culpa de una actualización reciente de WordPress.
Arreglando una versión de WordPress culpable
Si crees que una actualización de WordPress puede ser la culpable de los errores críticos de WordPress toca volver a la versión anterior de WordPress.
Y como ya publiqué una guía sencilla, paso a paso, de cómo hacerlo, aquí te dejo el enlace para que la sigas…
¿Conclusiones?
Ver un error crítico de WordPress puede parecer preocupante, pero al menos ahora te avisa, e incluso te ofrece un enlace para aprender sobre cómo depurar errores de WordPress.
Además, tu sitio WordPress te mandará un correo electrónico con instrucciones, y en ocasiones incluso se activará el modo de recuperación de WordPress.
Antes de la versión 5.3 de WordPress lo que tenías era la pantalla blanca de la muerte de WordPress.
¿Te gustó este artículo? ¡Ni te imaginas lo que te estás perdiendo en YouTube!
Fernando,
Gran tema!! Administro un sitio con muchas visitas y me aparece de vez en cuando el famoso aviso que mencionas, provocando una súbita alza de presión en mi sistema sanguíneo, luego una palidez cadavérica, para finalmente quedar en una especie de sonambulismo catatónico. Pero leyendo este post «se hizo la luz!», al menos ya tengo un camino ordenado para aplicar, (yo sospechaba que debía haber un procedimiento).
Así que se agradece, te haz ganado «una nueva perla para tu corona celestial» cómo me dice un amigo religioso cuándo le ayudo a entender como funciona su ordenador personal. Un abrazo en tono agradecido
jaja, muchas gracias por tu ilustre comentario, que da luz a mi triste y oscuro camino de bloguero 😀
Hola, Muchas gracias por tu articulo!
Formo parte de una ong y he querido actualizar la web y cambiar .es por .org y se me ha desconfigurado too. No puedo ni acceder al admin. Me he leido un monton de articulos de como solucionarlo pero son todos muy técnicos y me he descargado mil cosas que dicen pero sigo sin poder hacer nada. Necesito solucionar esto como sea por favor!
Hola Noemi, habría que acceder a tu hosting y base de datos, básicamente has hecho una migración pero sin hacerla. No es algo que te pueda ayudar con 4 frases, si quieres reserva una consultoría y ahí sí podríamos verlo
https://servicios.ayudawp.com/tienda/consultoria-online-wordpress/
Fernando:
A mi me pasó este problema pero solo con el navegador Opera. En la última actualización (5.6), al tratar de ver la vista previa de un tema no instalado (como el Twenty Twenty One), me salía la advertencia de error crítico. Si revisaba el administrador en Firefox y veía la vista previa de un tema, todo andaba perfecto.
¿Solución? Borrar todas las cookies de Opera, desde el inicio y asunto arreglado. Desconozco que pudo haber pasado ahí.
Nada que ver con el tema, pero algo similar me ha pasado con las actualizaciones desde 5.3. Cada vez que hay una actualización mayor, el editor no me carga y no puedo escribir nada (esto solo en Opera, en Firefox no pasa). Borro las cookies de Opera y listo, se soluciona. Tampoco se a qué se deberá esto, siendo que tengo todo actualizado.
Saludos
Lo que tienes es un mérito inmenso, debes ser de los pocos que aún usan Opera 😀
Gracias por compartir tu experiencia 😉
A mi lo que me ocurre en una web con WP y woocommerce es que cada vez que, en la zona de administración voy a “plugins” tarda mucho en carga y termina mostrándome “página no encontrada”. En ocasiones también recibo el mail de WP con error crítico. ¿Sabes a qué puede ser debido?
Puede ser cualquier problema de los que comento en la guía, yo haría todas las comprobaciones que cuento
Qué gran artículo Fernando, como siempre informativo y super útil. Muchas gracias. 🙂
A mi este sistema de WP_DEBUG me parece ideal para identificar errores en las actualizaciones, o cambios que hagas en las webs, como códigos con personalizaciones, que pueden generar fallos, pero no necesariamente errores graves y por lo tanto pueden pasar desapercibidos.
Pero nunca me quedó claro por qué no puede estar activo por defecto. ¿Según tu artículo anterior, es un tema de seguridad? Pero en qué sentido puede ser peligroso tener ese archivo de depuración activo?
Un gran abrazo,
Ah, sí, es una vulnerabilidad de seguridad, y es porque, al mostrar los errores, muestra rutas completas de archivos, lo que en sí es ya una vulnerabilidad. Por eso no de debe dejarse activo el modo debug.
Lo mismo con el archivo debug.log, debes asegurarte que no se pueda leer externamente, sin acceso a su ruta, por el mismo motivo, para no mostrar rutas de aplicaciones, errores, etc
Abrazote virtual, a ver si pronto del de verdad 🙂
Gracias por este salvavidas!!
Muchas gracias, me ha sido de gran utilidad. (¡Qué susto me pegué al ver la pantalla de «Error crítico»!!!!
En mi caso, actualicé Avada a 7.4 y el error se produce por el pluging Polilang. Lo desactivé y ya.
Gracias de nuevo
Hola, en mi pagina me sale que ha ocurrido un error critico en la pagina web, fue después de estar instalando un plugins, pero lo que pasa es que ya no me deja ingresar a mi pagina web
Desactiva el plugin rebonbrando la carpeta del plugin por FTP o desde el administrador de archivos del hosting
Hola! Muy útil y completo este artículo. En mi caso, me apareció la pantalla de error crítico cuando iba a editar la configuración de la plantilla (Apariencia -> Personalizar). Probé de todo: crear un archivo debug.log, pero por algún motivo, seguí tus instrucciones y no me aparecía ningún archivo debug.log, deshabilité plugins y seguía dando error, probé activando una plantilla por otra y pasaba lo mismo. Finalmente se me ocurrió volver a una versión antigua de Wordpress y así sí que me funciona y ha dejado de aparecer el error. Bien por haberlo resuelto pero no me deja tranquilo el tener que funcionar con una versión antigua de WP (5.4.6) y el miedo de que si actualizo WP vuelva a aparecerme ese error. ¿Alguna pista de qué podría hacer en el futuro? Muchas gracias!
Yo apostaría por la versión de PHP.
El modo correcto de probar es hacer una instalación de pruebas y mirar ahí con distintas configuraciones.
OK, tomo nota. Probaré a actualizar la versión de PHP que sí es cierto que no estoy tirando de la última versión. Muchas gracias!
Gran post, tenia un problema con un plugin recien instalado y me ha sido de gran ayuda tu guia. Muchisimas gracias!!
Excelente post. Muchas gracias por compartirlo. Que plugin recomiendas para hacer pruebas? y actualizar alli los plugins de modo que no se rompa el sitio en productivo y poder verlo anticipadamente? Ha escuchado de wp-staging? Que me sugiere? Tengo una academia virtual y al actualizar el pluglin instructor role me arrojó error critico. Necesito que sea mas estable este wordpress por el compromiso que se tiene con los alumnos. Mil gracias de antemano por la información.
Hola Mary, pues no recomiendo ningún plugin en particular, pero cualquiera que te permita hacer copias o duplicados vale, aunque lo mejor es si tu hosting tiene la opción de staging o el clonado de instalaciones de CPanel.
Hola. Yo tengo el error crítico más raro de la historia de Wordpress.
Para empezar no me manda ningún mensaje al correo electrónico. Ni siquiera me indica que vaya a hacerlo.
La solución no es que esté en todos los plugins y ver cuál falla, sino que tratando de arreglar otro problema que tenía, los desactivé todos y entonces fue cuando me salió esto.
He activado el modo debug, pero no funciona, es decir, sigue igual y no me deja ningún mensaje significativo en el debug.log, solo hace alusiones a Astra, que no creo que esté fallando, cuando hasta el momento de desactivar todos los plugins funcionaba correctamente.
También he probado a renombrar la carpeta plugins como plugins_ pero el error crítico persiste.
Ya he recorrido todo Google en español y en inglés y ni se me ocurren ni encuentro más soluciones.
Pueden ser muchas cosas, y sí, la secuencia es desactivar todos los plugins y ver si no da el fallo, y luego activarlos, y probar también con otro tema, y si falla algo borrarlo y volverlo a subir, puede pasar.
Gracias por la solución.
El problema se me presento al actualizar el plugin «AdSensei» y este cambio de nombre. Hice los pasos que señalas en desactivar todos y volver a activarlos 1 a 1..y suas di con el culpable.
Muchas gracias.