El modo de mantenimiento de WordPress es una de esas funciones que casi nadie nota mientras todo va bien. Pero una actualización se interrumpe, el sitio deja de cargar y, en lugar de la página de inicio, aparece un mensaje que avisa de que el sitio no está disponible temporalmente por mantenimiento. Entonces, una función pensada para durar unos segundos parece convertirse en una avería.
En realidad, en la mayoría de los casos no hay ningún misterio. WordPress utiliza el modo de mantenimiento para evitar que los visitantes accedan al sitio mientras se sustituyen algunos archivos durante una actualización. Es una protección razonable: mostrar una página cuando la mitad de un plugin ya se ha actualizado y la otra mitad no sería mucho peor.
El problema aparece cuando el proceso no llega al final y WordPress no consigue volver a su estado normal. Veamos, por tanto, cómo funciona el modo de mantenimiento de WordPress, cuándo es realmente necesario, por qué puede quedarse bloqueado y cómo salir de él sin causar daños.
Qué es el modo de mantenimiento de WordPress
WordPress dispone de un mecanismo de mantenimiento integrado en el núcleo. Durante determinadas actualizaciones crea en el directorio raíz de la instalación un archivo llamado .maintenance. La presencia de este archivo indica a WordPress que hay una operación en curso durante la cual el sitio no debería mostrarse normalmente a los visitantes.
Este comportamiento está documentado directamente en la referencia para desarrolladores de WordPress: WordPress comprueba si existe el archivo .maintenance en la raíz y lee la marca de tiempo de la actualización que contiene.
Cuando el modo está activo, el visitante suele ver una página muy sencilla con un mensaje de indisponibilidad temporal. WordPress también devuelve una respuesta HTTP 503 e indica un tiempo para volver a intentarlo. Por tanto, no es una página de error improvisada: es un comportamiento previsto por el núcleo.
Lo importante es distinguir este modo automático de una página de mantenimiento creada voluntariamente para ocultar un sitio mientras se realizan cambios. Parecen lo mismo, pero cumplen funciones distintas.
Cuándo entra WordPress automáticamente en mantenimiento
El caso habitual es una actualización. WordPress debe descargar los archivos nuevos, prepararlos y sustituir los existentes. Durante una parte de esta operación puede activar el modo de mantenimiento para impedir que llegue una solicitud justo cuando el sistema de archivos está en un estado transitorio.
El núcleo utiliza un mecanismo que crea el archivo .maintenance al activar el mantenimiento y lo elimina al desactivarlo. La documentación de WP_Upgrader describe expresamente esta creación y eliminación.
Es un poco como cambiar una rueda: durante unos minutos el coche permanece parado, no porque esté averiado, sino porque conducirlo sin una rueda sería una pésima idea. WordPress hace algo parecido mientras sustituye componentes necesarios para generar las páginas.
En condiciones normales dura poco. La actualización termina, se elimina el archivo y el sitio vuelve a estar accesible sin que tengas que intervenir.
El modo de mantenimiento automático y la página «sitio en mantenimiento» no son lo mismo
Aquí surge bastante confusión. Si necesitas rehacer la página de inicio, preparar un catálogo nuevo o trabajar durante horas en el sitio, no necesariamente estás utilizando el modo de mantenimiento técnico del núcleo. Estás decidiendo mostrar a los visitantes una página temporal mientras sigues trabajando entre bastidores.
Esta segunda situación puede gestionarse con un plugin, funciones del tema, un entorno de staging o una solución personalizada. Puedes mostrar el logotipo, un texto, datos de contacto y una fecha prevista de reapertura. Es una decisión editorial y operativa.
El modo automático de WordPress, en cambio, es principalmente un mecanismo técnico vinculado a las actualizaciones. No tendría mucho sentido mantenerlo activo durante horas para rehacer el sitio: bloquearías el acceso indiscriminadamente y utilizarías una herramienta diseñada para otro fin.
Por qué WordPress puede quedarse bloqueado en modo de mantenimiento
Si la actualización llega correctamente a su fase final, se elimina el archivo de mantenimiento. Si algo interrumpe el proceso antes, el archivo puede permanecer en la raíz.
La documentación del núcleo muestra claramente el proceso: durante una actualización de WordPress se crea .maintenance, se copian los archivos necesarios y después se elimina el archivo. La misma documentación señala que un tiempo de espera agotado de PHP durante el proceso puede interrumpir la actualización antes de eliminar el archivo. Es uno de los motivos por los que un sitio puede parecer «atascado» después de actualizarse.
Entre las situaciones prácticas que pueden contribuir a una actualización interrumpida están la finalización de un proceso PHP, problemas de escritura en el sistema de archivos, una conexión interrumpida con el servidor o un error durante la operación. Sin embargo, no conviene diagnosticar todos los casos suponiendo que la causa es siempre la misma: el mensaje de mantenimiento indica el estado del sitio, pero no explica automáticamente por qué no terminó la actualización.
¿Cuánto hay que esperar antes de intervenir?
Si acabas de iniciar una actualización y aparece la página de mantenimiento, lo primero que debes hacer es muy poco espectacular: esperar. Interrumpir un proceso que todavía está trabajando puede convertir una espera de unos segundos en un problema real.
WordPress considera activo el modo de mantenimiento del núcleo solo si la marca de tiempo del archivo .maintenance es reciente. Según la lógica actual del núcleo, un archivo con una marca de tiempo de más de diez minutos ya no mantiene activo ese modo. Esto no significa que todas las actualizaciones deban durar diez minutos: normalmente la indisponibilidad es mucho más breve. Significa que el núcleo también dispone de una protección temporal frente a archivos antiguos.
Si después de unos minutos el sitio sigue mostrando el mismo mensaje, o sabes que el proceso de actualización se ha interrumpido, entonces conviene comprobarlo.
Cómo salir del modo de mantenimiento bloqueado de WordPress
El procedimiento oficial indicado por WordPress para el mensaje de mantenimiento que permanece tras una actualización es sencillo: acceder a los archivos del sitio y eliminar el archivo .maintenance del directorio raíz de la instalación.
La raíz de WordPress es, en la práctica, la carpeta donde normalmente encontrarás directorios como wp-admin, wp-content y wp-includes. Puedes acceder a ella mediante el administrador de archivos de tu alojamiento o por FTP/SFTP, según las herramientas del proveedor.
El archivo empieza por un punto. Algunos administradores de archivos no muestran los archivos ocultos de forma predeterminada, así que quizá tengas que activar la opción para verlos.
Una vez localizado .maintenance, elimínalo y vuelve a cargar el sitio. El procedimiento también aparece en la página oficial dedicada a los errores comunes de WordPress.
Pero hay un detalle importante: eliminar el archivo resuelve el estado de mantenimiento, pero no garantiza que la actualización interrumpida se haya completado correctamente.
Después de eliminar .maintenance, comprueba la actualización
Este es el paso que más a menudo se omite. El sitio vuelve a verse y parece que el problema está resuelto, así que se da todo por terminado. Pero si el mantenimiento se quedó bloqueado porque la actualización se detuvo a mitad del proceso, lo importante no es solo reabrir el sitio: es averiguar en qué estado quedaron WordPress, el plugin o el tema afectados.
Accede al escritorio y comprueba la pantalla de actualizaciones. Verifica si el componente sigue pendiente de actualización y revisa las partes principales del sitio, especialmente las relacionadas con el componente que acabas de modificar.
Si estabas actualizando WooCommerce, por ejemplo, no te limites a comprobar si se abre la página de inicio: revisa al menos el catálogo, el carrito y la página de pago. Si estabas actualizando un maquetador visual, abre algunas páginas creadas con él. La prueba debe ajustarse al riesgo real.
De hecho, la documentación de WordPress recomienda volver a ejecutar la actualización si la automática ha fallado. Que desaparezca el mensaje no certifica que todo haya salido bien.
Antes de las actualizaciones importantes, la copia de seguridad sigue siendo tu red de protección
El modo de mantenimiento protege a los visitantes durante una fase delicada, pero no es una copia de seguridad y no puede devolver el sitio a su estado anterior si una actualización provoca incompatibilidades o daños.
Por eso, antes de realizar cambios importantes, conviene disponer de una copia que realmente pueda restaurarse. En nuestra guía completa sobre copias de seguridad de WordPress hemos visto qué debe contener una copia, dónde guardarla y por qué «tengo una copia de seguridad» sirve de poco si no sabes si podrás restaurarla.
Es una distinción útil: el mantenimiento reduce el riesgo de mostrar el sitio mientras cambian los archivos; la copia de seguridad reduce las consecuencias si el cambio sale mal.
Cuándo conviene utilizar una página de mantenimiento voluntaria
Hay casos en los que quieres impedir deliberadamente que los visitantes vean el sitio durante más tiempo. Un rediseño importante, un cambio estructural del catálogo, una intervención en precios y configuraciones o la preparación de un nuevo proyecto pueden justificar una página temporal.
Pero a menudo existe una solución mejor: trabajar en una copia de staging y dejar intacto el sitio público hasta que los cambios estén listos. Así no obligas a usuarios y buscadores a encontrarse con una puerta cerrada durante todo el trabajo.
Una página de mantenimiento voluntaria tiene sentido cuando realmente necesitas suspender el acceso al sitio en producción. El staging tiene sentido cuando necesitas desarrollar y probar cambios sin afectar al sitio público. Son herramientas complementarias, no sinónimos.
Modo de mantenimiento desde WP-CLI
Quienes administran WordPress desde la línea de comandos también disponen de un método oficial para controlar este estado. WP-CLI ofrece el comando wp maintenance-mode, con operaciones para activar, desactivar y comprobar el modo.
Por ejemplo, wp maintenance-mode status permite comprobar su estado, mientras que wp maintenance-mode activate y wp maintenance-mode deactivate permiten activarlo y desactivarlo, respectivamente. Los comandos están documentados en el manual oficial de WP-CLI.
No es el método que recomendaría a quien no utiliza ya SSH y WP-CLI: incorporar una herramienta nueva mientras intentas resolver un problema rara vez simplifica las cosas. Para administradores y desarrolladores que ya trabajan desde la terminal, en cambio, es una comprobación clara y fácil de automatizar.
Es posible personalizar una página de mantenimiento
El núcleo de WordPress también permite sustituir el mensaje estándar durante su modo de mantenimiento. La función interna wp_maintenance() comprueba si existe un archivo maintenance.php en el directorio wp-content y, si existe, lo utiliza en lugar de la pantalla predeterminada.
Es una posibilidad interesante para proyectos gestionados profesionalmente, pero conviene distinguirla una vez más de la típica página «coming soon» administrada mediante un plugin. Aquí estás personalizando el comportamiento técnico del mantenimiento del núcleo.
Para la mayoría de los sitios no es necesario complicar el sistema. Si las actualizaciones se preparan bien y la ventana de mantenimiento dura unos segundos, puede que los visitantes nunca lleguen a verla.
Qué no hacer cuando el sitio está bloqueado en mantenimiento
Cuando un sitio no responde, la tentación es hacer muchas cosas a la vez: recargar continuamente, volver a ejecutar actualizaciones, borrar archivos y desactivar plugins al azar. Es la mejor manera de perder la relación entre causa y efecto.
Es mejor proceder por orden. Primero comprueba si la actualización sigue en curso. Si el mantenimiento está realmente bloqueado, revisa .maintenance. Tras recuperar el acceso, verifica el estado de la actualización y las funciones afectadas. Solo si aparecen otros errores, pasa al siguiente diagnóstico.
Si, por el contrario, tras eliminar el archivo de mantenimiento aparece un error PHP o WordPress indica un problema grave, ya no estás ante un simple bloqueo del mantenimiento. En algunos casos también puede intervenir el Recovery Mode de WordPress, que permite acceder mediante un enlace especial cuando se detecta un error PHP fatal e identificar plugins o temas problemáticos.
El modo de mantenimiento no es el problema: es una señal
Ver el sitio temporalmente en mantenimiento durante una actualización es normal. Esta función existe precisamente para evitar que los usuarios accedan mientras WordPress sustituye archivos importantes.
Se convierte en un problema cuando ese estado no termina. En ese caso, el archivo .maintenance suele ser lo primero que hay que comprobar, pero no debería ser lo último: si se ha interrumpido una actualización, es necesario verificar que el componente afectado sigue siendo coherente y funcional.
La regla práctica es sencilla: unos segundos de mantenimiento durante una actualización no son motivo de alarma; un mantenimiento que no termina requiere una comprobación. Y antes de operaciones importantes, disponer de una copia de seguridad verificada hace que todo resulte mucho menos dramático.
El equipo de The Waffle
