No creo faltar a mi deber de discreción porque ya Felipe Zayas se ha referido públicamente al problema que sufrió ayer en su blog, Darle a la lengua. Al final de la entrada que escribió sobre el particular (una de entre las muchas que conforman su estupenda serie “Las herramientas son para el verano”), Felipe cita mi intervención en el caso, así que me siento autorizado para hacer algunas puntualizaciones sobre la cuestión, con la esperanza de que sean útiles para los sufridos colegas blogueros.

El problema se originó tras la instalación por parte de Felipe de un nuevo tema o plantilla (en concreto, la versión en español del tema 281, original de Paul Stamatiou y adaptado al español por Felipe Lavín), tras lo cual el backend del blog se tornó inaccesible, y apareció uno de esos mensajes crípticos para los no programadores, Warning: Cannot modify header information - headers already sent by (output started at...), que invocaba uno de los ficheros de la nueva plantilla. Tras la solicitud de ayuda de Felipe, hice algunas comprobaciones que resultaron poco iluminadoras. Como no tenía nada claro el origen del trastorno, le aconsejé que borrara la carpeta contenedora del tema o la moviera a otro emplazamiento. De esta forma, suponía yo a partir de mis experiencias previas, no sólo desaparecerían los mensajes de alarma y sería accesible el interfaz de administración, sino que el blog volvería al tema por defecto.

Lamentablemente, mi consejo sólo funcionó parcialmente. En efecto, al borrar la carpeta del tema, desaparecieron las alertas y pudimos tomar de nuevo el control del backend, pero en cambio el frontend del blog mostraba los síntomas de la peor pesadilla del webmaster: una página en blanco, sin mensajes ni indicaciones de ningún tipo sobre la naturaleza del problema.

Enseguida comencé a sospechar que en la tabla wp_options habían quedado restos del tema descartado. Para comprobarlo, indagué un poco en Google, confirmé un par de casos similares (véanse los artículos titulados Upgrading to WordPress 2.6 and the white blank page y WordPress en blanco gracias al plugin Theme Tester) y, acto seguido, le pedí a Felipe los datos de su cuenta de alojamiento. Desde el phpMyAdmin de su proveedor, entré en la base de datos, busqué el valor “theme” en el campo option_name y comprobé que existía un valor en el campo option_value que apuntaba al tema descartado. Edité dicho valor, lo sustituí por “Default” (que es el nombre del tema por defecto en WordPress), y ya pude acceder a la página principal. A partir de ahí fue muy sencillo volver al interfaz de administración y reactivar la plantilla que hasta ayer tenía el blog.

Sigo sin saber cuál fue la causa inicial del problema inicial, aunque sospecho algún tipo de incompatibilidad entre el tema de Stamatiou-Lavín, que ya tiene alguna antigüedad y al parecer está pendiente de actualizar, y la versión de WordPress instalada en Darle a la lengua. En todo caso, la experiencia me ha venido muy bien para averiguar un detalle que hasta ahora no conocía, y es que la instalación de un tema en WordPress modifica no uno, sino tres registros en la tabla wp_options, los cuales corresponden a los siguientes tres valores en el campo option_name: “template”, “stylesheet ” y “current_theme”.

Si a alguien le falla su blog y le aparece una página en blanco, ya sabe lo que tiene que hacer: entrar en la base de datos, acceder a la mencionada tabla, buscar en el campo option_name los valores “template”, “stylesheet ” y “current_theme” (véase la captura que aparece en la figura 1, tomada del phpMyAdmin de La Bitácora del Tigre) y pasar los correspondientes valores del campo option_value a “default” (no sé si tiene importancia o no, pero advierto que el valor “Default” para “current_theme” va en mayúscula, y en minúscula para los otros dos).

Figura 1: valores relacionados con el tema del blog en la tabla wp_options

Ya sé que todo esto puede ser un galimatías para los poco duchos en las interioridades de WordPress, pero como decía el castizo, “es lo que hay”. En todo caso, el incidente con Darle a la lengua no sólo viene bien para aprender, sino también para tomar una perspectiva más amplia y reflexionar a fondo sobre un tema tan importante para la buena marcha de un blog como es el de la correcta selección de su plantilla. Pero esto queda para mañana, si Dios quiere.