Te has percatado de que cuando actualizas algún plugin o actualizas tu WordPress, tu sitio muestra por algunos segundos en el front end el mensaje: “Briefly unavailable for scheduled maintenance. Check back in a minute“.
O su equivalente en español : “No disponible por mantenimiento programado. Vuelve a comprobar el sitio en unos minutos”.
1- Generalidades
Mostrar una página de mantenimiento cuando realizas actualizaciones, es una medida de protección que tiene WordPress; si no hubiera esta protección, tus usuarios podrían ver errores en el sitio mientras están trabajando y tu actualizando.
En este artículo veremos cómo personalizar esta página de mantenimiento, ya que, como te habrás dado cuenta, la página que se genera por defecto no es muy agradable y se muestra sólo un mensaje como en la siguiente imagen.

2- Forzando el Mantenimiento
Para que puedas empezar a realizar modificaciones primero debes ver la página de mantenimiento, realiza lo siguiente:
- Crea un archivo llamado .maintenance en la raíz de tu sitio web, si, el archivo debe tener un punto delante, similar a .htaccess
- En este archivo vas a colocar el siguiente código:
<?php $upgrading=time(); ?>
Una vez realizados los pasos anteriores si consultas el front-end de tu sitio ya deberías ver la página en mantenimiento.
¿Qué significa lo que acabamos de hacer?
Si revisamos el archivo wp-includes/load.php en la función wp_maintenance veremos que hay dos condiciones para mostrar el sitio en mantenimiento.
- Que exista el archivo .maintenance
- Que la variable global $upgrading menos el tiempo actual (en segundos) sea menor a 600 (10 minutos)
Con respecto a esto último, de manera general, WordPress espera como máximo 10 minutos con la página de mantenimiento mientras esta actualizando. Con la asignación $upgrading=time() nos aseguramos que siempre se muestre el mantenimiento.
3- Modificando la Página de mantenimiento
Para personalizar la página de mantenimiento de WordPress crearemos un Plugin Dependiente.
Si revisas nuevamente la función wp_maintenance en el archivo load.php, verás que al final de la función se carga un código HTML, esto, siempre y cuando no encuentre el siguiente archivo WP_CONTENT_DIR . ‘/maintenance.php’. Teniendo esto en cuenta puedes crear simplemente un archivo llamado maintenance.php dentro de la carpeta de contenido wp-content y personalizarlo a tu gusto.
Por ejemplo para obtener una página de mantenimiento como se muestra en la siguiente imagen

Puedes usar el siguiente código en el archivo maintenance.php, este código incluye una imagen incrustada con código SVG para facilitar la portabilidad del archivo.
4- Eliminando .maintenance
Una vez realices todas estas modificaciones puedes eliminar el archivo .maintenance, la próxima vez que actualices se creará temporalmente y se llamará al archivo creado en /wp-content/maintenance.php
¿Aún con dudas?, en el siguiente video se explica los puntos tratados anteriormente
Excelentes artigos e vídeos postados nesse canal, parabéns pelos trabalhos realizados aqui! 🙂
Genial!
Lo que me ha costado encontrar alguien que explique bien como cambiar la apariencia de la pantalla de mantenimiento, que la por defecto es fea de narices.
Gracias
Y el fichero maintenance.php ¿No se pisa con las actualizaciones? 🤔
Hola Eva, ese archivo no es parte de una actualización, de hecho ni siquiera lo encontrarás en una nueva instalación de WordPress. Por lo que no se perderá en una actualización.
Gracias Jhon por las explicaciones , un blog excelente.