Cómo poner WordPress en modo mantenimiento

Fecha: 19/08/2024
En ciertas ocasiones, cuando quieres efectuar algún cambio importante en tu aplicación, suele ser recomendable establecer un modo mantenimiento en la misma para afectar lo menos posible a tus clientes o a los visitantes de la web.

Por ello, en este artículo te explicaremos qué es y en qué ocasiones puede ser recomendable utilizar un modo mantenimiento en WordPress, también comentaremos brevemente el mantenimiento que establece WordPress por defecto y te indicaremos varios métodos diferentes para poder configurarlo por tu cuenta.

Índice del artículo
  • ¿Qué es el modo mantenimiento en WordPress y cuando deberías utilizarlo?
  • ¿Por qué configurar un modo mantenimiento en WordPress y cuando es recomendable hacerlo?
  • Plugins para configurar modo mantenimiento en WordPress
  • Establecer modo mantenimiento con el plugin "Under Construction"
  • Configurar modo mantenimiento con un constructor
  • Cómo poner WordPress en modo mantenimiento con código
  • Configurar modo mantenimiento mediante el functions.php de tu tema
  • Establecer modo mantenimiento mediante el fichero .htaccess

¿Qué es el modo mantenimiento en WordPress y cuando deberías utilizarlo?


El modo mantenimiento en WordPress es una función que se activa automáticamente cuando se están llevando a cabo cambios de importancia en el sitio web, por ejemplo, la actualización del núcleo de WordPress. Durante este proceso, se les mostrará a los visitantes un mensaje temporal en el que se informa de que la página no se encuentra disponible en ese momento.

modo mantenimiento en WordPress

Este modo mantenimiento funciona utilizando una función llamada "wp_maintenance" y creando el fichero ".maintenance" en la raíz de tu web, el cual contiene el mensaje que se muestra públicamente. En cuanto finaliza el proceso que ocasionó el modo mantenimiento, el archivo se elimina automáticamente, con lo que la web ya debería de ser funcional nuevamente.

Este mantenimiento que genera WordPress por defecto se activa únicamente en ocasiones puntuales, y el mensaje que se muestra a los visitantes digamos que es "mejorable". Por ello, te explicaremos a continuación varios métodos para poder configurar un modo mantenimiento desde tu lado, de forma que puedas habilitarlo cuando quieras y personalizarlo más a tu gusto.

¿Por qué configurar un modo mantenimiento en WordPress y cuando es recomendable hacerlo?


Hay que tener en cuenta que al habilitar un modo mantenimiento en WordPress, se evita que los visitantes puedan acceder a páginas incompletas o con errores, lo que podría afectar a su experiencia y perjudicar la imagen del sitio. Además, hay que tener en cuenta que el modo mantenimiento ayuda a prevenir posibles conflictos entre las actualizaciones y asegura que el sitio web funcione de forma correcta una vez completados todos los cambios, por lo que consideramos que es crucial establecerlo en algunos momentos específicos.

A continuación, te indicaremos varios momentos en los que consideramos que es recomendable establecer un modo mantenimiento en tu sitio web:

  • Actualización del núcleo de WordPress (especialmente si vamos a realizar una actualización de versión mayor).

  • Actualización de elementos de la web (plugins y temas), sobre todo si se va a realizar una actualización en lote o de bastantes elementos de forma simultánea (nuestra recomendación es realizar las actualizaciones siempre una por una).

  • Cambios en la estructura o diseño del sitio, por ejemplo, si vas a sustituir el tema o modificar alguna sección en particular.

  • Instalación/configuración de nuevos elementos en la web, ya que desconocemos que funcionamiento tendrán exactamente una vez instalados y si van a generar alguna problemática.

  • Migración de web: es recomendable en ciertas situaciones (por ejemplo, en un ecommerce), para evitar que la instalación pueda des actualizarse en el tiempo que dure el proceso.

  • Web en desarrollo: si estamos todavía en el proceso de creación de nuestra página web, lo idóneo es configurar un modo mantenimiento hasta el lanzamiento.

  • Solución de problemas: en caso de que se produzca algún error en la web o te encuentres con alguna problemática en la visualización, activar el modo mantenimiento puede ser útil para evitar que los usuarios se encuentren con dichos errores o con contenido incompleto.


Plugins para configurar modo mantenimiento en WordPress


Como indicamos anteriormente, existen varias formas de establecer un modo mantenimiento en WordPress, y la más sencilla es a través de un plugin. Existen multitud de plugins que realizan esta función, no obstante, te indicaremos algunas opciones gratuitas a continuación para que las tengas en cuenta:

  • Under Construction: se trata de un plugin bastante completo que pone a tu disposición varias opciones de interés para configurar tu página de mantenimiento. Este plugin te permite escoger entre multitud de plantillas prediseñadas (algunas de pago), no obstante, además de permitirte modificar el texto que se mostrará al visitante final, también te permite incluir los iconos de las redes sociales con enlaces hacia tu cuenta correspondiente, un botón de inicio de sesión, permitir el rastreo de Google Analytics, implementar código CSS al diseño de la plantilla, etc.


mantenimiento Under Construction

El plugin también dispone de otra serie de funcionalidades que únicamente son posibles con la versión de pago, por ejemplo, permitir el acceso a la web a ciertas IPs, permitir el acceso a perfiles de usuario que le indiques, configurar una contraseña para permitir el acceso, impedir a los motores de búsqueda la indexación del sitio temporal, etc.

  • Website Builder by SeedProd: Lo más positivo que tiene este plugin con respecto al resto que te indicaremos en este post, es que tiene un constructor visual propio que te permite modificar a tu gusto las plantillas que vienen prediseñadas por defecto (también te permite crearlas desde cero).


mantenimiento Website Builder by SeedProd

 

En el pasado, este plugin únicamente te permitía crear una página de mantenimiento o una de "Próximamente" (la diferencia es que la primera les indica a los motores de búsqueda que la web no está disponible), no obstante, en la actualidad, puedes utilizar el plugin como un constructor de WordPress más, y crear todas tus páginas con el mismo cómo podrías hacer con Elementor o con Visual Composer.

Website Builder con Elementor

  • Mantenimiento web: es sin duda el plugin más sencillo de los indicados, pone a tu disposición 4 plantillas prediseñadas para la página de mantenimiento y únicamente te permite configurar el texto/mensaje que se muestra a los visitantes, además de añadir tu ID de Google Analytics para seguir recogiendo datos.


Plugin Mantenimiento web

  • WP Maintenance: Con este plugin puedes personalizar de una forma bastante completa tu página de mantenimiento, ya que te permite modificar el texto que se muestra en la misma, cambiar su CSS, añadir imágenes (una de cabecera y otra de fondo), configurar una cuenta regresiva, añadir tus redes sociales, etc.


WP Maintenance

 

Además, también tiene un apartado de ajustes para activar el SEO (puedes editar el título y el "meta_description") o añadir algún texto o link específico al footer de la página. Este plugin es una buena opción si quieres algo más personalizado, no obstante, actualmente no está traducido al castellano y no dispone de páginas de mantenimiento prediseñadas, por lo que puede requerir de algo más de conocimiento y tiempo para configurarla a tu gusto.

  • Maintenance: si quieres optar por un plugin rápido y sencillo de configurar, esta puede ser tu opción, ya que dispone de muy pocas opciones configurables en su versión gratuita, y puedes configurar tu página de mantenimiento en un par de minutos.


Maintenance

Aun así, dispone de alguna opción más que el plugin de "Mantenimiento web", ya que te permite modificar la imagen de la página, subir un logotipo, cambiar el texto y su formato e incluso excluir algunas páginas y entradas para permitir su visualización públicamente.

Como ves, existen multitud de plugins para configurar un modo mantenimiento en tu WordPress, y dependiendo de lo que quieras exactamente, puedes escoger entre unos u otros.

Si no sueles configurar el modo mantenimiento y lo utilizas únicamente en ciertas ocasiones contadas, puedes optar por los plugins más sencillos, como "Mantenimiento web", "Maintenance" o incluso "Under Construction" que permite alguna opción adicional, no obstante, si quieres tener una página más personalizada y profesional, te recomendamos configurar la página con "WP Maintenance" o con algún constructor como "SeedProd" o "Elementor".

Establecer modo mantenimiento con el plugin "Under Construction"


La mayoría de los plugins de mantenimiento son bastante intuitivos y fáciles de configurar, no obstante, a continuación, te explicaremos cómo puedes configurar el modo mantenimiento con el plugin "Under Construction", por si te genera alguna duda el proceso.

Una vez instalado el plugin nos dirigimos a los ajustes del mismo, en donde podremos ver algo como esto:

Under Construction ajustes

Para activar el modo mantenimiento, simplemente cambiamos a "ON" la opción de "Modo en construcción". No obstante, antes de nada, podrías escoger una de las plantillas personalizadas del apartado de "Diseño".

Under Construction diseño

Por otro lado, si nos dirigimos a la sección de "Contenido", podemos modificar el título y el texto (contenido) que se mostrará a los visitantes. Además, si quieres añadir enlaces hacia tus redes sociales, puedes hacerlo desde la sección "Iconos sociales y de contacto" de la parte inferior (tendrás que introducir la URL completa de tu perfil).

Under Construction contenido

Con esto, deberías de tener ya configurado un modo mantenimiento sencillo en la web, aunque como indicamos con anterioridad, si quieres disponer de una página más personalizada, lo idóneo es que utilices otro plugin o un constructor para realizarla.

Configurar modo mantenimiento con un constructor


Si no quieres instalar un plugin adicional para configurar el modo mantenimiento, tendrías la opción de crear una página con el constructor que utilizas normalmente (ya sea Elementor, Divi, Visual Composer, etc.) con el diseño y contenidos que desees. Simplemente, tendrías que crear la página a tu gusto y configurarla como página de inicio en WordPress, algo que puedes hacer fácilmente desde el administrador de WordPress, en el apartado Ajustes >> Lectura >> Tu página de inicio muestra >> Una página estática (Página de inicio).

WordPress en modo mantenimiento sin plugin

Una vez configurada la página de inicio, te recomendaríamos habilitar también la opción de "Pedir a los motores de búsqueda que no indexen este sitio", que se encuentra en el mismo apartado del administrador (Ajustes >> Lectura), de esta forma, te aseguras de que no se indexe la página de mantenimiento.

Cómo poner WordPress en modo mantenimiento con código


Configurar modo mantenimiento mediante el functions.php de tu tema


Para realizar la configuración mediante este método, tendrás que editar el fichero "functions.php" del tema que utilices (nuestra recomendación es que utilices un tema hijo para que los cambios que realices en el código no se pierdan con las actualizaciones).

Si tienes un hosting con Raiola Networks, puedes editar este archivo fácilmente desde el administrador de archivos de cPanel o mediante FTP, aunque también puedes hacerlo directamente desde el administrador de WordPress, en el apartado Apariencia >> Editor de temas.

Aquí tendrás que copiar el código correspondiente, te dejamos a continuación un ejemplo para que lo tomes como referencia:
//MODO MANTENIMIENTO:

function mode_maintenance(){
if(!current_user_can('edit_themes') || !is_user_logged_in()){
wp_die('<div style="border: dotted 3px black;">

&nbsp;
<h2 style="color: #72d7ff; text-align: center; font-size: 35px;">SITIO WEB EN MANTENIMIENTO</h2>
&nbsp;
<p style="text-align: center; font-size: 30px;">Estamos en construcción, pronto recibirás nuevas noticias...</p>

<center><img src="https://raiola-mantenimiento.com/wp-content/uploads/2024/08/raiola.jpeg" /></center></div>', 'Sitio en Mantenimiento', array( 'response' => 503 ));
}
}
add_action('init', 'mode_maintenance');

Pegando esto en el fichero, el resultado al acceder a la web debería ser algo parecido a esto:

Configurar modo mantenimiento con código

Establecer modo mantenimiento mediante el fichero .htaccess


Lo primero que tienes que hacer para configurar el modo mantenimiento de esta forma, es dirigirte al directorio raíz de la web y crear un archivo HTML (por ejemplo, mantenimiento.html) que contenga el mensaje que quieres que se visualice en la página, por ejemplo:
<!doctype html>

<style>
body { text-align: center; padding: 150px; background-color: #f1f1f1; }
h2 { font-size: 50px; }
body { font: 20px Helvetica, sans-serif; color: #333; }
article { display: block; text-align: left; width: 650px; margin: 0 auto; }
a { color: #dc8100; text-decoration: none; }
a:hover { color: #333; text-decoration: none; }
</style>
 

<article>
<h2>¡Estamos realizando tareas de mantenimiento en la web!</h2>
 
<div> Si lo necesitas, puedes ponerte en contacto conmigo al correo info@raiola-mantenimiento.com o en el número 000000000 Volveremos lo antes posible. - El webmaster</div>
 

</article> 

Una vez hecho esto, tendrás que configurar el siguiente código en el .htaccess para redirigir todo el tráfico al fichero que acabamos de crear:
RewriteEngine On
RewriteCond %{REQUEST_URI} !^/mantenimiento\.html$
RewriteCond %{REMOTE_ADDR} !^93\.156\.210\.23$
RewriteRule $ /mantenimiento.html [R=302,L]

Es recomendable que realices una copia de tu antiguo ".htaccess" o lo renombres a ".htaccess_original", para poder intercambiarlo posteriormente, cuando quieras quitar el modo mantenimiento.

Aclarar que tendrás que modificar la IP indicada en el fichero". htaccess" por la de tu dispositivo, esto es algo que puedes revisar fácilmente desde aquí: https://raiolanetworks.com/cual-es-mi-ip/

Es importante que excluyas tu IP tal y como se indica en el fichero, ya que si no lo haces, no te será posible acceder a la web debido a la redirección.
Andrés Gude
Andrés Gude

Andrés Gude forma parte del departamento de aplicaciones de Raiola Networks. Usuario de un ordenador desde la cuna, apasionado de la F1 y del D10S del fútbol, Leo Messi.

Artículos relacionados

Si te ha gustado este post, aquí tienes otros que pueden ser de tu interés. ¡No dejes de aprender!

Tenemos 31 comentarios en Cómo poner WordPress en modo mantenimiento

Deja una respuesta

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

Avatar del autor del comentario

Victoria Jose San Martín Gil

03/04/2019 a las 12:04

Hola,
Me parece un artículo muy interesante.
Tengo una consulta ¿en el caso de hacerlo mediante la función en el archivo functions.php, ¿significa que se activa automáticamente la página cada vez que entras a editar una página o un post?

Responder
Avatar del autor del comentario

Bego Romero

10/04/2019 a las 16:33

Hola, si modificas el archivo functions.php y pones en mantenimiento la web aunque realices nuevas páginas y las edites (o artículos del blog) seguirá estando en mantenimiento hasta que quites la función del archivo. ¡Un saludo!

Responder
Avatar del autor del comentario

Victoria Jose San Martín Gil

11/04/2019 a las 16:14

Gracias!!

Responder
Avatar del autor del comentario

Full Time Brothers

07/08/2019 a las 12:12

Gracias Bego Romero, estaba buscando algo así para enviarselo a un cliente!!

Responder
Avatar del autor del comentario

Bego Romero

09/08/2019 a las 14:03

Me alegro de haberte ayudado ;)

Responder
Avatar del autor del comentario

Ali

16/09/2019 a las 15:27

¡Hola Bego! He realizado la acción de poner en modo de mantenimiento mediante el archivo functions.php y ahora no me deja acceder a mi página web para editarla..... ¿cómo puedo acceder ahora?

Responder
Avatar del autor del comentario

Bego Romero

03/10/2019 a las 12:42

Hola Ali,

Lo mejor es que borres las líneas de código que añadiste, en teoría debe de volverte a funcionar si es este el motivo. Mucha suerte!

Responder
Avatar del autor del comentario

Berta Nicolau

14/11/2019 a las 13:08

Hola Bego, tengo un problema, he creado un plugin con la función que has puesto, y funciona correctamente. El problema lo tengo en el diseño, me aparece la tipica pàgina de wordpress con el cuadradito, y aunque pongo divs al 100% aparcen dentro del recuadro y no fuera. Alguna idea de lo que puede estar pasando?
Por ahora he puesto un texto muy básico para probarlo, pero no consigo "eliminar" este recuadro.



https://uploads.disquscdn.com/images/6d28ff514cae55cbabb1c355c5a39abe2db07d176b6a3a742b2d1f9e89ef8da0.png

Responder
Avatar del autor del comentario

Bego Romero

14/11/2019 a las 19:44

Hola Berta, me alegro de que lo hayas solucionado!!

Responder
Avatar del autor del comentario

Marcelo Perazzo

03/01/2020 a las 13:54

Hola, mu y bueno el artículo!!! Una consulta: en mi caso tengo que actualizar una web obsoleta, pero conservando los contenidos, es decir cambiar la plantilla, actualizar wordpress ...el tema es que como no se cuanto me puede a llegar a demandar ese trabajo ( pues es hacer todo el diseño nuevo), hay alguna forma de que la web vieja siga estando en linea y cuando tenga lista la otra web nueva subirla. Mi preocupacion es pisar los contenidos de la vieja web...gracias!

Responder
Avatar del autor del comentario

chaks

18/03/2020 a las 19:53

Edite mi archivo funtions.php agregue las lineas de codigo, actualice el archivo y aun así no se ve mi cambio ¿qué paso que tengo qué cambiar?

Responder
Avatar del autor del comentario

Alvaro Fontela

20/03/2020 a las 11:52

Hola Chaks, eso es porque lo has hecho en el archivo incorrecto o que tienes algún plugin de cache.

Si quieres, puedes probar con el plugin Code Snippets: https://www.youtube.com/wat...

Responder
Avatar del autor del comentario

Rosario

16/04/2020 a las 18:15
Hola, Gracias por el artículo, es muy útil, me gustaría plantearte una cosilla para ver si que me aconsejas. Mi web está abierta desde hace un año, en estos momentos está prácticamente parada, sin visitas ni entradas nuevas. Pensaba ponerla en modo mantenimiento durante unos meses, ¿puedo hacerlo simplemente activado el plugin adecuado o hay otro método más recomendable?
(Al final de tu articulo escribes "No utilices el modo mantenimiento si tienes una web ya publicada, construye tu web en un subdominio o dominio externo y luego mígrala" . Sinceramente soy una total inexperta y no entiendo prácticamente nada de esto).
Muchísimas gracias, un saludo
Responder
Avatar del autor del comentario

Alvaro Fontela

17/04/2020 a las 19:10
Hola Rosario, si no tienes NADA de trafico, puedes ponerla en modo mantenimiento sin problema.

El tema de ponerla en modo mantenimiento, es que vas a perder todo el trafico desde Google si lo tuvieras.
Responder
Avatar del autor del comentario

Luis

07/09/2020 a las 15:19
Tengo una duda, si estoy corriendo una web en un ngnix dentro de un contenedor docker, y por alguna razon ese contenedor se muere, es posible mostrar una pagina de mantenimiento similar?
Responder
Avatar del autor del comentario

Alvaro Fontela

16/09/2020 a las 16:45
Hola Luis, si tienes un balanceador de carga o algo delante de la web puedes hacerlo (con CloudFlare podrías hacerlo con workers también creo), en caso contrario no.
Responder
Avatar del autor del comentario

Ade

01/10/2020 a las 17:42
Hola!
Mil gracias por este tutorial!
Yo tenia la pagina en Modo Construcción con Under Construcción.
Lo desactivé y lo desinstalé.
Luego he publicado mi pagina, pero sigue apareciendo en modo construcción, alguna idea de donde viene el problema?
Todos los temas y plugin de mi tema ( Astra) estan al día.
Gracias por vuestra ayuda!
Responder
Avatar del autor del comentario

Alvaro Fontela

05/10/2020 a las 15:02
Hola Ade, puede ser que la pagina este cacheada, pero con tan pocos datos es imposible decirte algo concreto.
Responder
Avatar del autor del comentario

Gustavo

25/11/2020 a las 10:29
Hola,
Al parecer el array( ‘response’ => 503 ) da error. Pero lo quitas y funciona. PERO, funciona también que ni siquiera me deja entrar en administración.

Supongo que el código está ya desactualizado, porque obviamente no debería ser así.

Gracias en cualquier caso
Responder
Avatar del autor del comentario

Alvaro Fontela

23/01/2021 a las 22:32
Hola Gustavo, efectivamente han cambiado cosas en el modo mantenimiento de WordPress y es necesario actualizar este post, pero aun no hemos tenido tiempo.
Responder
Avatar del autor del comentario

Ana

30/11/2020 a las 00:55
Buenas noches, acabo de añadir la función cambiando únicamente mi URL y cuando trato de entrar en la web, efectivamente, me aparece en construcción pero arriba pone:
Warning: Use of undefined constant ‘response’ - assumed '‘response’' (this will throw an Error in a future version of PHP) in /home/customer/www/iulamj.com/public_html/wp-content/themes/iulam-joyas/functions.php on line 4
¿Qué puedo hacer para que desaparezca? o ¿quito la función?.
Gracias.
Responder
Avatar del autor del comentario

Alvaro Fontela

23/01/2021 a las 22:33
Hola Ana, este código esta obsoleto ahora mismo desde hace 2 versiones.
Responder
Avatar del autor del comentario

Ana

30/11/2020 a las 01:06
Buenas noches de nuevo, ahora mi problema es mayor (disculpa mi desconocimiento) intento entrar en WordPress para continuar editando pero no puedo, lo único que sale es la página de "en construcción" y no tengo manera de acceder. ¿Qué puedo hacer?
Muchas gracias.
Responder
Avatar del autor del comentario

Alvaro Fontela

23/01/2021 a las 22:34
Hola Ana, para decirte algo es necesario saber con que plugin o método has puesto la web en construcción.
Responder
Avatar del autor del comentario

Mauricio

15/03/2021 a las 23:31
Hola Álvaro cordial saludo... Por favor tu ayuda... He incluido el código en el plugin "Code Snippets" y funcionó bien al mostrar la pantalla con el aviso de Mantenimiento. Pero a partir del segundo día no me permite ingresar al ambiente de administración de mi wordpress para seguir editando la página web. Cómo podría ingresar nuevamente para borrar el código?
Responder
Avatar del autor del comentario

Alvaro Fontela

18/03/2021 a las 10:54
Hola, si es ese plugin, todo lo que tienes que hacer es acceder por FTP y renombrar la carpeta de ese plugin para que deje de funcionar.
Responder
Avatar del autor del comentario

Mauricio

15/03/2021 a las 23:37
Hola Ana... Cómo pudiste solucionar el mensaje de página en construcción? A mí me está pasando lo mismo. No me deja entrar a Wordpress. Agradezco tus comentarios!
Responder
Avatar del autor del comentario

Daniela

08/09/2021 a las 02:00
Buenas noches de nuevo, ahora mi problema es mayor intento entrar en WordPress para continuar editando pero no puedo, lo único que sale es la página de “en construcción” y no tengo manera de acceder. Lo hice ingresando el código en Funcion.php. ¿Qué puedo hacer?
Muchas gracias.
Responder
Avatar del autor del comentario

David Suárez

23/09/2021 a las 09:02
¡Hola Daniela!

Siguiendo el código de ejemplo del post, lo he modificado un poco para que la página siga en modo mantenimiento pero puedas tener acceso a la pantalla de login de tu WordPress. Sería así:


function mode_maintenance(){
global $pagenow;
if(!current_user_can('edit_themes') || !is_user_logged_in()){
if ($pagenow != 'wp-login.php') {
wp_die('

SITIO WEB EN MANTENIMIENTO

Estamos en construcción, pronto recibirás nuevas noticias...

', 'Sitio en Mantenimiento', array( ‘response’ => 503 ));
}
}
}
add_action('init', 'mode_maintenance');


De esta manera seguirías teniendo la web en modo mantenimiento, pero podrías acceder a la administración de tu WordPress a través de un enlace del tipo: miweb.com/wp-login.php

Un saludo y espero haberte ayudado :)
Responder
Avatar del autor del comentario

Alejandra S.

14/10/2022 a las 01:01
Hola!
Muchas gracias por el tutorial!
Saludos!
Responder
Avatar del autor del comentario

Andrea Barreiro

25/10/2022 a las 12:50
Gracias a ti por leer y comentar, Alejandra :-)
Responder

Deja una respuesta

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