White screen of dead en wordpress 4.0.1

Como muchos sabréis, ya se la lanzado la última versión (esta vez es un “simple” bugfix) de wordpress, la 4.0.1. Yo lo he sabido al ver en mi correo electrónico que más o menos la mitad de mis sitios se habían actualizado solos (los que no me había acordado de desactivar esa opción, que no me gusta nada). El caso es que hace un rato, al ir a acceder a la administración de uno de esos sitios… oh! Sí! Un bonito White screen of dead (pantallazo blanco de la muerte) me ha “saludado”.

Error en wordpress 4.0.1 White screen of dead, pantallzo blancoUn pantallazo blanco de estos suele ser bastante molesto, pues ves que tu sitio esta ahí, funcionando aparentemente bien, pero no puedes de ninguna de las maneras acceder al backend y puede en un primer momento poner bastante nervioso a quien lo sufre por primera vez.

Parece que esta actualización ha sufrido algún problema, tal vez ha sobrecargado algunos hostings, no lo sé, el caso es que he visto un poco de movimiento en foros y grupos acerca de instalaciones con esta problemática. Así que para quienes llegáis aquí por que buscabais como solucionar vuestro white screen of dead y también, por supuesto, para los lectores habituales del blog, os voy a contar como solucionar este problemilla.

Solucionando el pantallazo blanco de wordpress

Lo primero, para quienes no le den a la programación, una pantalla en blanco no es tan crítica como puede parecer. La pantalla se queda en blanco porque ha habido algún problema en la ejecución del script, y como una de las medidas de seguridad más básicas y estándar en una instalación en producción (en real) es tener los mensajes de error apagados, no se están mostrando dichos mensajes. Pero están ahí. Lo único que necesitamos para saber qué está pasando, porque no vemos nuestra administración si no una pantalla en blanco, es volver a encenderlos. Esto es tan fácil como acceder por FTP a al alojamiento donde tengamos instalado el blog, y en el fichero wp-cnfig.php la linea que dice

define('WP_DEBUG', false);

cambiarlas por

define('WP_DEBUG', true);

al refrescar veremos que apareen los mensajes de error que nos estaban faltando. La pantalla blanca ya no es tal y nos dice exactamente dónde está el problema!!

En mi caso, había 2 errores. Uno eran una funciones obsoletas en un Plugin , que no eran el problema pero de todos modos he arreglado, y otro era que el archivo post.php en la carpeta wp-admin terminaba de forma incorrecta.

De forma incorrecta? Que quiere decir eso? Pues he vuelto al FTP, he mirado el archivo y he visto que , efectivamente, el archivo estaba corrupto, y se cortaba de forma abrupta. Nada, lo único que necesitamos es sustituir los archivos corruptos por otros frescos (recién bajados del repositorio) y a correr.

Por un momento he pensado sustituir solo ese archivo, pero como no tenia la seguridad de que sea el único corrupto, he optado por sustituirlos todos y asegurar el tiro. Son 1000 y pico archivos, pero bueno, tampoco tarda tanto. Así que nada, me he ido a wordpress.org, he bajado la ultima versión (sí, la misma que había fallado al actualizarse. La tengo corriendo en otros blogs que he actualizado de forma manual así que sabía que el problema no estaba en los archivos, si no que había sucedido al actualizar), la he descomprimido y la he subido a mi sitio sobrescribiendo todos los archivos. Como jamas de los jamases habremos de modificar nada del core, es absolutamente seguro hacer eso, ya que no esta acción no sobrescribe ningún Plugin, ni tema, ni configuración de nada.

Una vez subidos he borrado el archivo .mantinance (se genera cuando hay una actualización en curso, en este caso la que se quedo a medias) , que es el que provoca el mensaje ese de “el sitio está en mantenimiento, vuelva dentro de un rato”, he comprobado que ya podía acceder a mi administración y he vuelto (importantísimo esto) a editar wp-config para dejar la linea

define('WP_DEBUG', true);

en su estado original

define('WP_DEBUG', false);

Entonces cuando pase subo una copia limpia y ya esta?

Sí y no. En este caso (y en muchos oros, sobre todo cuando el problema aparece tras una actualización del core) sí es la solución, peor si el problema es por un Plugin o theme (o una actualización de un Plugin o theme) esto no arreglará nada. Lo primero para arreglar un problema es saber cual es, y para eso es imprescindible activar los errores de php , ver que errores hay y actuar en consecuencia.

Y ahora es cuando os pido un like, un +1 o un retweet para poder seguir escribiendo artículos y compartiendo cosas con vosotros (ahí ⇘⇘⇘⇙⇙⇙, debajo del los artículos relacionados están los botones)

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *