
🔧 Cómo activar el modo mantenimiento en WordPress: 4 métodos
Su plugin falló en el peor momento y los visitantes ven una pantalla blanca en lugar de su sitio. O peor: usted decidió cambiar el tema y el diseño se rompió justo frente a sus clientes.
El modo mantenimiento cierra el frontend a los visitantes, pero conserva su acceso completo al panel de administración. Los motores de búsqueda reciben HTTP 503 y entienden que el sitio está temporalmente cerrado, no muerto. A continuación, cuatro métodos que funcionan: desde un simple interruptor en un plugin hasta una redirección de servidor que opera incluso si WordPress está completamente roto.
💡 Resumen rápido:
- Paso 1: instale LightStart (antes WP Maintenance Mode), actívelo, cambie Estado a Activado y la página básica de aviso estará lista.
- Paso 2: instale SeedProd, elija el tipo Modo mantenimiento y abra el editor de arrastrar y soltar con más de 50 plantillas e integraciones con servicios de correo electrónico.
- Paso 3: añada 15 líneas al
functions.phpde su tema hijo; el hookget_headercerrará el sitio a todo el mundo excepto a los administradores, sin un solo plugin. - Paso 4: añada una RewriteRule a
.htaccessy creemaintenance.html; la redirección funcionará incluso cuando WordPress esté completamente caído.
Qué es el modo mantenimiento de WordPress
WordPress activa un modo mantenimiento integrado durante cada actualización del núcleo, plugins y temas. Se genera un archivo .maintenance en la raíz del sitio; los visitantes ven «Brevemente no disponible por mantenimiento programado. Vuelva a consultar en un minuto». Esto dura segundos y luego el sitio regresa.
Pero a veces necesita un modo prolongado y controlado con su propia página de aviso. Estos son escenarios concretos:
- Migrar su sitio a un nuevo hosting o dominio: los visitantes no deben ver el proceso de migración;
- Probar una actualización mayor: un plugin nuevo podría romper temporalmente la maquetación;
- Cambiar temas: el diseño se rompe justo frente a los clientes;
- Reestructurar contenido: menús, categorías, tipos de contenido personalizados.
El punto clave para el SEO: una respuesta HTTP adecuada con el código 503 Service Unavailable. A diferencia de un servidor muerto, el 503 le dice a Google «el sitio está vivo, temporalmente cerrado, vuelva más tarde». Con una cabecera Retry-After, el posicionamiento no se verá perjudicado incluso durante un mantenimiento de varios días.
Método 1: código en functions.php (sin plugins)
La opción más concisa: 15 líneas en el functions.php de su tema hijo. Cero plugins, solo la API estándar de WordPress. Adecuado si usted fundamentalmente no quiere añadir dependencias.

Añada el código al final del functions.php de su tema hijo o mediante el plugin Code Snippets. No toque el functions.php del tema padre: una actualización borrará sus cambios.
1 function wp_maintenance_mode() { 2 if ( ! current_user_can( 'edit_themes' ) || ! is_user_logged_in() ) { 3 wp_die( 4 '<h1>Сайт на обслуживании</h1>' . 5 '<p>Мы проводим плановые технические работы. ' . 6 'Вернёмся в ближайшее время!</p>', 7 'Сайт на обслуживании' 8 ); 9 } 10 } 11 add_action( 'get_header', 'wp_maintenance_mode' );
Lo que ocurre aquí: el hook get_header se dispara en cada carga de página pública, antes de que se forme el contenido visible. Si el usuario no es administrador (carece de la capacidad edit_themes o no ha iniciado sesión), wp_die() muestra el aviso. Usted, al iniciar sesión como administrador, ve el sitio con normalidad.
Nota: wp_die() devuelve HTTP 500, no el 503 correcto. Para un lapso breve de 1 a 2 horas, esto no es crítico. Para un mantenimiento prolongado, use un plugin de los métodos siguientes: ellos devuelven el código HTTP correcto.
Para desactivar: comente o elimine el código.
Método 2: plugin LightStart (antes WP Maintenance Mode)
LightStart, renombrado de WP Maintenance Mode por Themeisle. Gratuito, casi 20 millones de descargas y una calificación de 4.3 sobre 5 en WordPress.org. Versión 2.6.22, actualizado en mayo de 2026. La vía más rápida hacia un aviso funcional: instalación, un interruptor.

Tras la activación, abra Ajustes → WP Maintenance Mode. La pestaña General contiene el interruptor principal Estado. Seleccione Activado y el aviso ya estará funcionando.

Aquí también puede configurar:
- Omisión para bots de búsqueda → Sí: los bots de búsqueda ven el sitio real y entienden que está vivo;
- Rol en backend y Rol en frontend: quién tiene acceso durante el mantenimiento (solo administradores por defecto).

Diseño de la página de aviso
La pestaña Diseño es el editor de apariencia. Configure el título, contenido, fondo (color o imagen), fuentes, tamaños y logotipo.

Módulos: cuenta regresiva, suscripción, redes sociales
La pestaña Módulos diferencia a LightStart de las soluciones simples:
- Cuenta regresiva: un temporizador de cuenta atrás hasta que el sitio abra. Fije una fecha y los visitantes verán «El sitio abre en 3 días 12 horas»;

- Suscríbase: un formulario de suscripción por correo electrónico. Los usuarios dejan su dirección y reciben una notificación cuando el sitio se abre;

- Redes sociales: iconos de redes sociales en la página de aviso; inserte las URL y los iconos se obtienen automáticamente;

- Bot: un chatbot para interactuar con los visitantes en lugar de una página de aviso estática, que se configura en la pestaña Manage Bot.

Si recopila correos electrónicos mediante el formulario de suscripción, abra la pestaña GDPR y configure las casillas de consentimiento para el tratamiento de datos.

¿Listo? Abra el sitio en una ventana de incógnito del navegador y compruebe cómo se ve la página de aviso.
Descarga: 🔗 LightStart en WordPress.org
Método 3: plugin SeedProd
SeedProd, un constructor de páginas de aviso con editor de arrastrar y soltar. Versión 6.20.3, más de 34 millones de descargas, valoración de 4,9 sobre 5, actualizado en junio de 2026. Esto ya no es solo modo mantenimiento: es un constructor completo de páginas de aterrizaje con más de 50 plantillas e integración de email marketing.

Tras la activación, vaya a SeedProd** → Settings**. En la pestaña Coming Soon & Maintenance Mode, active Status. Elija el tipo:
- Coming Soon Page: para sitios nuevos, aún no lanzados;
- Maintenance Mode: para sitios en producción durante actualizaciones.
Haga clic en Edit Coming Soon / Maintenance Page y accederá al editor visual con una galería de plantillas.

Seleccione una plantilla y se abrirá el editor de arrastrar y soltar. Cambie todo sin código.

Funcionalidades clave de SeedProd
- Pestaña Content: título, logotipo, descripción, favicon, título SEO y descripción SEO;

- Google Analytics: inserte el código de seguimiento y vea cuántas personas visitan la página provisional;
- Background: color, imagen, video o slider;
- Email marketing: formulario de suscripción con integración en Mailchimp, ConvertKit, ActiveCampaign, Brevo y más de 20 servicios adicionales;
- Auto-responder: correo automático a todo el que deje su email, configurado en la pestaña Setup Additional Auto-responder;
- Social media: iconos con enlaces a perfiles;
- Progress indicator: porcentaje de avance del sitio, útil para Coming Soon;
- Responsiveness: vista previa en escritorio, tableta y teléfono, conmutador en la parte superior del editor.
Haga clic en Back to Settings → Save All Changes. SeedProd devuelve el HTTP 503 correcto para la página de mantenimiento.
Descarga: 🔗 SeedProd en WordPress.org
Método 4: vía.htaccess (a nivel de servidor)
Este método funciona antes de cualquier código PHP. El servidor Apache procesa .htaccess antes de que WordPress cargue, por lo que este método funciona incluso cuando el sitio está completamente caído.
Abra .htaccess en la raíz del sitio (donde se encuentra wp-config.php) y añada lo siguiente al principio del archivo:
1 RewriteEngine On 2 RewriteBase / 3 RewriteCond %{REMOTE_ADDR} !^123\.456\.789\.123 4 RewriteCond %{REQUEST_URI} !^/maintenance\.html$ 5 RewriteRule ^(.*)$ /maintenance.html [R=307,L]
Sustituya 123\.456\.789\.123 por su dirección IP real (consúltela mediante cualquier servicio de «cuál es mi IP»). Qué hace cada línea:
RewriteCond %{REMOTE_ADDR} !^...: todos excepto su IP van a la página provisional. Usted ve el sitio real desde su IP;RewriteCond %{REQUEST_URI} !^/maintenance\.html$: la propia página provisional no se redirige a sí misma, de lo contrario se produce un bucle infinito;RewriteRule ... [R=307,L]: código 307, redirección temporal, una señal para los motores de búsqueda de que «esto es temporal».
Cree un archivo maintenance.html en la raíz del sitio (junto a .htaccess):
1 <!DOCTYPE html> 2 <html lang="ru"> 3 <head> 4 <meta charset="UTF-8"> 5 <meta name="viewport" content="width=device-width, initial-scale=1.0"> 6 <title>Сайт на обслуживании</title> 7 <style> 8 body { display: flex; align-items: center; justify-content: center; 9 min-height: 100vh; font-family: system-ui, sans-serif; 10 background: #1a1a2e; color: #eee; text-align: center; } 11 h1 { font-size: 2rem; } 12 </style> 13 </head> 14 <body> 15 <div> 16 <h1>Сайт на обслуживании</h1> 17 <p>Проводим технические работы. Скоро вернёмся!</p> 18 </div> 19 </body> 20 </html>
Para desactivarlo: elimine o comente las líneas añadidas en .htaccess.
Comparación de los cuatro métodos
Criterio | Código en functions.php | LightStart | SeedProd | .htaccess |
|---|---|---|---|---|
Complejidad | Baja (copiar código) | Mínima (plugin) | Baja (plugin) | Media (editar archivo) |
Código HTTP | 500 (incorrecto) | 503 (correcto) | 503 (correcto) | 307 (redirección temporal) |
Diseño del placeholder | Manual (HTML en código) | Editor integrado | Drag-and-drop, más de 50 plantillas | Archivo HTML separado |
Cuenta regresiva | ❌ | ✅ | ✅ | ❌ |
Formulario de suscripción | ❌ | ✅ | ✅ (más de 20 integraciones) | ❌ |
Auto-respondedor | ❌ | ❌ | ✅ | ❌ |
Redes sociales en el placeholder | ❌ | ✅ | ✅ | ❌ |
Acceso de administrador | Automático (por rol) | Configurable | Configurable | Por IP (manual) |
Funciona sin WordPress | ❌ | ❌ | ❌ | ✅ |
Plugin adicional | No | 1 | 1 | No |
En la práctica, LightStart es suficiente para la mayoría de las tareas: la configuración toma un minuto, HTTP 503 desde el primer momento. SeedProd se elige cuando necesita una página de aterrizaje atractiva con email marketing..htaccess es una herramienta de emergencia, pero vale la pena que todos tengan una plantilla guardada en favoritos.
Vea cómo se ve el proceso de configuración en la práctica:
⁉️🤔 Preguntas frecuentes
¿Qué método es mejor para principiantes?
Instale LightStart (busque «WP Maintenance Mode» en el directorio de WordPress.org): gratuito, dos clics para obtener resultados, un placeholder listo sin construir desde cero. Vaya a Plugins → Añadir nuevo, instale, active y en Ajustes → WP Maintenance Mode cambie Estado → Activado. El sitio queda cerrado y usted puede trabajar en el diseño con tranquilidad.
¿Qué método ofrece el mejor diseño?
SeedProd con su editor drag-and-drop y más de 50 plantillas. Si necesita una página de aterrizaje con estilo, con logotipo, temporizador, formulario de suscripción y animación: elija SeedProd. La versión gratuita incluye la mayoría de las plantillas y un conjunto básico de bloques. Para una página de mantenimiento, la versión gratuita es más que suficiente.
¿Qué debo hacer si el sitio ya está roto y el panel de administración no abre?
Solo.htaccess. Con la pantalla blanca de la muerte, un error fatal de PHP o conflictos de plugins, ningún código PHP se ejecutará. Acceda a su hosting por FTP o a través del administrador de archivos, edite
.htaccessen la raíz del sitio, suba unmaintenance.htmllisto y verifique desde una ventana de incógnito. Después de eso, solucione WordPress con calma.
¿Es necesario instalar un plugin?
No. El código en functions.php resuelve la tarea «cerró el sitio, hizo cambios, lo abrió» sin dependencias adicionales. Un plugin es necesario si quiere una cuenta regresiva, recolección de correos de visitantes, un chatbot en el placeholder o un HTTP 503 correcto. Si no necesita nada de eso: 15 líneas de código lo manejarán por completo.
¿El modo mantenimiento afectará al SEO?
Con una configuración adecuada, no. LightStart y SeedProd devuelven 503 Servicio no disponible: Google interpreta esto como «temporalmente no disponible, volverá más tarde». El código mediante functions.php devuelve HTTP 500, que es peor, pero para un lapso de 1 a 2 horas no es crítico..htaccess con código 307 también es seguro. El punto principal: no mantenga el sitio cerrado durante semanas sin cambios.
Qué método elegir: chuleta rápida
Tres preguntas y la elección es obvia:
- ¿Necesita diseño? Un mensaje de texto simple: use código en functions.php, cero plugins, cero costos. Una página con estilo, con logotipo y temporizador: LightStart (más simple) o SeedProd (más flexible).
- ¿Necesita recolección de correos? SeedProd proporciona un formulario de suscripción con integración en Mailchimp, ConvertKit, ActiveCampaign y un auto-respondedor. LightStart también recolecta correos, pero sin integraciones profundas.
- ¿El sitio sigue funcionando? Si el panel de administración funciona, cualquiera de los cuatro métodos. Si WordPress no carga, solo.htaccess.
Recomendamos LightStart para la mayoría de las tareas: configuración en un minuto, 503 correcto para SEO, funciona en cualquier hosting. Y tenga una plantilla.htaccess con un maintenance.html listo guardada en favoritos para un día lluvioso.
¿Qué método utiliza usted? Escriba en los comentarios si tiene su propio enfoque o algún matiz que valga la pena añadir.



