Descuento 20% Diciembre
Plugin Optimización de Imágenes Gratuito para WordPress
Sábado, 18 Marzo 2017 23:40

WordPress en Mantenimiento ¡sin plugins ni complicaciones!

Escrito por 
CMS:  WordPress |  Versión:  Todas |  Nivel de dificultad:  Básico |  Tiempo estimado de lectura:  5 minutos


WordPress en Mantenimiento


Es bastante habitual acordarse de Santa Barbara cuando truena y apresurarse a parchear el problema cuando el indexado de contenidos ya se ha producido. En el mundo del diseño web supone tomar la precaución de poner WordPress en Mantenimiento para evitar que Google y otros buscadores indexen los contenidos antes de tiempo.

Tras contratar un Hosting te apresuras a instalar una web con tu gestor de contenidos favorito, instalas un Pack WordPress que se aproxima mucho a tus necesidades y te centras en la estética y los contenidos, olvidando que hay aspectos prioritarios a los que debes prestar atención antes de avanzar.

¿Que pasa cuando estas desarrollando tu web y no evitas el rastreo de tu sitio web? pues que de repente encuentras tu url temporal en las búsquedas de Google o la página es accesible "a todo el mundo" porque aunque diseñas con la url temporal no la has cerrado a ojos ajenos. Se puede solucionar, no te preocupes ¡veamos como!

 

Modo Mantenimiento sin plugins ¡mejor!

Todo lo que sirva para reducir la carga de un sitio web debe ser siempre recibido con los brazos abiertos, a fin de cuentas además de reducir el estrés de carga y consultas a la base de datos, ayuda a despejar de código adicional la instalación, sin olvidar que los plugins hay que vigilarlos, actualizarlos y esperar de ellos que no tengan 'bugs' escondidos que acaben afectando a la web o desestabilizando funcionalidades de otros plugins.

Cualquier tarea que puedas realizar en WordPress utilizando 'snippets', funciones o filtros es siempre más recomendada a largo plazo que el uso de plugins.

Los plugins nos lo ponen todo más fácil ¡eso es cierto! pero también nos dejan a merced de código que no siempre cumple con el patrón de programación fomentado por WordPress.org

Es tan fácil dejarse seducir por un plugin que dice hacer esto o aquello, que la tentación de no instalarlo está apenas a 1 clic de distancia.

Pero no hay que dejarse llevar por las primeras impresiones, a veces los plugins esconden demasiadas funcionalidades que luego no acabamos utilizando y lo único que terminamos haciendo es montar un motor de competición en un coche utilitario. ¿es necesario?

Necesitas que tu sitio WordPress no sea visible mientras realizas cambios, personalizaciones, o porque estás cambiando el tema o la disposición de 'widgets'. Activar Modo de Mantenimiento te permite seguir trabajando en el sin que sea visible públicamente.

Usemos pues una función (breve código que se apoya en funciones de WordPress definidas para realizar acciones o devolver valores, estados, etc.) para mostrar una pantalla de aviso a los visitantes de la web advirtiéndoles que hemos cerrado temporalmente el sitio web por reformas, trabajos extraordinarios o lo que proceda.

 

¿Cómo funciona esta función?

Muy sencillo. Una vez la insertas en el archivo functions.php y guardas los cambios, se activa el modo mantenimiento.

Todos los visitantes que accedan a http://tudominio.com y no estén identificados como administradores verán una página de "mantenimiento del sitio".

Tu, como administrador seguirás viendo el sitio web, no necesitarás filtrar tu IP para que sea permitida la visualización del frontal de la web, pero el resto de usuarios no verán la página.

Una vez que finalices la edición, el cambio de tema, las personalizaciones deseadas, etc., sólo tienes que eliminar el código o ponerlo "en pausa" hasta que vuelvas a necesitas activarlo.

El código de la función lo pausas añadiendo una doble barra // antes de cada línea de la función.

 

¿Cómo añadir la función?

Para aplicar esta función de forma sencilla y efectiva lo ideal es acceder a tu dashboard, Apariencia, Editor, localizar la plantilla Funciones del tema (functions.php) y cargar el archivo, ir al final y añadir después del código <?php } (es posible que tu tema no necesariamente cierre functions.php con ese código) la siguiente función:

/*** Inicio Modo Mantenimiento ***/
function mode_maintenance(){
    if(!current_user_can('edit_themes') || !is_user_logged_in()){
        wp_die('<div style="border:solid 1px grey;"><h1 style="color:#FF942A; text-align:center; text-transform:uppercase;">Sitio en Mantenimiento</h1><p style="text-align:center; font-size:18px;">Estamos trabajando en el nuevo sitio ¡en breve estaremos online!</p></div>', 'Sitio en Mantenimiento', array( ‘response’ => 503 )); 
    }
}
add_action('init', 'mode_maintenance'); 
/*** Fin Modo Mantenimiento ***/

En esta captura puedes ver con más detalle donde inserto la función.


Añadir la función

El resultado lucirá como ves en esta captura.


Resultado

A partir de este código puedes imaginar como añadir una sección de enlaces a tus redes sociales, insertar un formulario (de un campo preferiblemente) para que se suscriban a tu boletín de noticias, una imagen de fondo, etc..

 

¿Y después de activar el Modo Mantenimiento?

Básicamente ¡trabajar en el sitio! siempre que estés logeado antes de activar este modo y no te desconectes del dashboard en el navegador que estés trabajando. Desde otro navegador diferente puedes por ejemplo cargar la web para comprobar que el "modo mantenimiento" está activo, aunque desde tu navegador actual sigas viendo el sitio web.

 

¿Sin acceso a wp-admin con el Mantenimiento activo?

Esta función limita el acceso tanto al frontal de la web como al dashboard, por lo que para poder desactivar el modo mantenimiento y luego logearte en http://www.tudominio.com/wp-admin primero debes comentar o eliminar la función insertada en functions.php de lo contrario no verás el formulario de login.

Tienes que acceder a tu Panel de Hosting (cPanel), Archivos, Administrador de Archivos, y navegar a la carpeta /wp-content/themes/ y editar functions.php, localizar al final el código de la función y encerrarlo entre /** código de la función */ para que deje de estar funcional.

Ejemplo:

/**
/*** Inicio Modo Mantenimiento ***/
function mode_maintenance(){
    if(!current_user_can('edit_themes') || !is_user_logged_in()){
        wp_die('<div style="border:solid 1px grey;"><h1 style="color:#FF942A; text-align:center; text-transform:uppercase;">Sitio en Mantenimiento</h1><p style="text-align:center; font-size:18px;">Estamos trabajando en el nuevo sitio ¡en breve estaremos online!</p></div>', 'Sitio en Mantenimiento', array( ‘response’ => 503 )); 
    }
}
add_action('init', 'mode_maintenance'); 
/*** Fin Modo Mantenimiento ***/
*/

De esta forma queda comentado ese bloque de código y recuperas el acceso al frontal y al dashboard.

Si bien se trata de un proceso manual y bastante artesano, es la alternativa a tener que usar un plugin, que es de lo que se trataba de ilustrar en este artículo  

...disfrutar creando tu proyecto web, añadir contenidos o productos si se trata de una tienda con WooCommerce o cualquier otro plugin de e-commerce para WordPress, sin olvidar que con cerrar el sitio no se soluciona todo ya que debes evitar que sea indexado por los motores de búsqueda para que no aparezcan enlaces o referencias de tu sitio si está cerrado todavía.

 

No permitas que los bots de indexado de motores de búsquedas rastreen tu sitio cerrado por mantenimiento o desarrollo.

     

¿Te ha resultado interesante este artículo?

Suscríbete para recibir consejos exclusivos para WordPress, Joomla y PrestaShop



Luis Méndez Alejo

Miembro del equipo técnico de Webempresa.
Coordinador de contenidos en el Blog y en Youtube.
Google+


Plugin Optimización de Imágenes Gratuito para WordPress