En muchas ocasiones precisamos redireccionar nuestro blog o web en wordpress a una subcarpeta, con el fin de que nuestro sitio no esté visible temporalmente, de este modo cuando alguien intente acceder a nuestra web lo llevará a dicha ubicación.
En este directorio lo idóneo es tener preparado un fichero index que muestre al visitante que la web está en labores de mantenimiento o que por ahora no puede ser visitada.
Para usar este método bastará con añadir un poco de código a nuestro fichero index.php de la carpeta de instalación de nuestro wordpress como veremos a continuación.
En primer lugar accederemos a nuestro hosting de WordPress y en la carpeta de instalación de WordPress encontramos el fichero index.php que debe tener la siguiente pinta:
<?php /** * Front to the WordPress application. This file doesn't do anything, but loads * wp-blog-header.php which does and tells WordPress to load the theme. * * @package WordPress */ /** * Tells WordPress to load the WordPress theme and output it. * * @var bool */ define('WP_USE_THEMES', true); /** Loads the WordPress Environment and Template */ require('./wp-blog-header.php'); |
Antes de modificar nada lo aconsejable es realizar una copia de seguridad del propio fichero index.php aunque como vais a ver solamente añadiremos un poco de código que a continuación os muestro.
/*Codigo a añadir*/ require_once( dirname(__FILE__) . '/wp-load.php' ); if(!is_user_logged_in() && $pagenow != 'wp-login.php') { wp_redirect( 'http://midominio.es/carpeta/index.php', 302 ); exit; } /*Codigo a añadir*/ |
Según este código estamos indicando que si el usuario no está logueado o que la URL a la que estamos intentando acceder no es la del login lo redirija a la siguiente dirección, usando un redireccionamiento temporal 302.
Para hacer esto bastará con añadir este código anterior a nuestro index.php, resultando el siguient código.
<?php /** * Front to the WordPress application. This file doesn't do anything, but loads * wp-blog-header.php which does and tells WordPress to load the theme. * * @package WordPress */ /** * Tells WordPress to load the WordPress theme and output it. * * @var bool */ /*Codigo a añadir*/ require_once( dirname(__FILE__) . '/wp-load.php' ); if(!is_user_logged_in() && $pagenow != 'wp-login.php') { wp_redirect( 'http://midominio.es/carpeta/index.php', 302 ); exit; } /*Codigo a añadir*/ define('WP_USE_THEMES', true); /** Loads the WordPress Environment and Template */ require('./wp-blog-header.php'); |
De esta forma si intentamos acceder a cualquier URL de nuestro sitio nos redirigirá a la página temporal.
Para poder acceder a vuestro sitio y modificar lo que sea necesario el camino será teclear la dirección de vuestro login donde ya podremos poner usuario y password. Al loguearnos, nosotros o nuestros colaboradores, ya tendremos la posibilidad de visualizar el sitio para poder trabajar tranquilamente e ir haciendo las modificaciones pertinentes.
Una vez hayamos terminado nuestro trabajo podemos eliminar esta parte del código o como suelo hacer, dejarlo comentado por si hay que hacer futuras modificaciones y no deseo que esté visible el sitio mientras estoy trabajando.
Espero que os haya sido de utilidad este post. 🙂