Cómo cambiar tu red de subdominios a subcarpetas y viceversa

A la hora de crear una red de blogs o webs en WordPress, una de las primeras decisiones que hay que tomar es si querremos que las rutas de los blogs de nuestra red sean subdominios o subcarpetas. Una vez decidido, WordPress te dará 3 simples pasos a seguir para que tu red esté configurada y lista para utilizar.

Sin embargo, una vez que lo has hecho y la red ya está creada y configurada, WordPress no te da la posibilidad de cambiar de opinión. En el caso de, por ejemplo, haber elegido subdominios, poder cambiar a subcarpetas (ojo, no es recomendable cambiar de un tipo a otro una vez que ya hay blogs creados en la red).

En este artículo vamos a mostraros los cambios que hay que hacer si queréis, teniendo ya vuestra red configurada de una forma, cambiarla a la otra. No olvidéis que dichos cambios son muy sensibles y que no debéis usar este tutorial en ningún sitio en producción, ya que al pasar de una configuración a otra perdereis la configuración anterior y, en caso de que algo no vaya bien, dejaríais de visualizar la red entera.

Por lo tanto, si eres el administrador de tu red, lo primero de todo es hacer una copia de seguridad de la base de datos de tu WordPress y de los archivos wp-config.php y .htaccess.

Una vez hecho esto, sólo tendras que hacer un pequeño cambio en wp-config.php y otro, un poco más importante, en el archivo .htaccess. A continuación muestro el código para los dos casos posibles:


Cambiar la configuración de subcarpetas a subdominios


En el archivo wp-config.php, busca la línea:

define( ‘SUBDOMAIN_INSTALL’, false );

sustitúyela por la siguiente y guarda los cambios:

define( ‘SUBDOMAIN_INSTALL’, true );

Ahora, en el archivo .htaccess, sustituye todo el código que hay en él por el siguiente y guarda también los cambios:

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
# uploaded files
RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ – [L]
RewriteRule . index.php [L]

 


Cambiar la configuración de subdirectorios a subdominios


En el archivo wp-config.php, busca la línea:

define( ‘SUBDOMAIN_INSTALL’, false );

sustitúyela por la siguiente y guarda los cambios:

define( ‘SUBDOMAIN_INSTALL’, true );

En el archivo .htaccess, sustituye todo el código que hay en él por el siguiente y guarda los cambios:

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ – [L]
# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]
# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]
RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ – [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(wp-(content|admin|includes).*) $2 [L]
RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
RewriteRule . index.php [L]

Comentarios

7 respuestas a «Cómo cambiar tu red de subdominios a subcarpetas y viceversa»

  1. Avatar de José Conti

    Hola,

    Mejor cambiar el «No es recomendable» por «No es posible sin hacer otros cambios»

    Si ya hay blogs, hay que cambiar tambien las URL de todos los blogs.

    En WPMU, conseguí hacerlo en alguna instalación, con wp3, lo intenté una vez y no hubo forma, no se si habrán mas cosas a cambiar.

    Tal y como lo ponéis alguno lo probará y se encontrará con un problema.

    Salu2

  2. Avatar de Rocío Valdivia
    Rocío Valdivia

    Hola Jose!!!, gracias por la recomendación!!!!. En realidad sí es posible porque yo lo hice :P, eso sí, he escrito que no es recomendable porque al cambiar de subdominios a subcarpetas con blogs ya creados, perdí todos los nombres de los blogs de prueba que tenía y los tuve que eliminar y crear de nuevo, por eso no he puesto «No es posible», porque posible es 😉

    Por otro lado, escribí el artículo por compartir la experiencia que tuve la semana pasada cuando me encontré ante este caso en un WordPress multisite 3.1.3 y lo que he hecho es describir los pasos que yo seguí y que me funcionaron, evidentemente cada instalación es diferente, ya sea por configuración del servidor, ya sea por plugins instalados, etc.

    Un saludo!!!! 🙂

  3. Avatar de José Conti

    Hola Rocio,

    A eso me refería, al problema con los blogs ya creados.

    Si se hace solo lo que explicas, dejarán de funcionar todos los blogs.

    Lo que hay que hacer, como mínimo en WPMU, es ir a la edición de cada blog, ahora en WP3, sería http://tusitio.com/wp-admin/network/site-info.php?id=2 (para el blog con ID 2) y cambiar la URL.

    Pero me parece que ahora ya no basta solo con esto…

  4. Avatar de Rocío Valdivia
    Rocío Valdivia

    Hola José, perdona por no esponderte antes, he estado un poco desconectada 🙁

    Como bien dices, si se tienen muchos blogs en la red no es para nada recomendable cambiar de un tipo de ruta a otra, ya que además de lo que comentas, otro factor a tener en cuenta es la configuración del servidor. Suponemos que nuestra red está en producción y hacemos el cambio de rutas a subdominios. Si la configuración de nuestro servidor no soporta subdominios, nos habremos cargado la red y volver atrás puede ser una tarea laboriosa.

    Así que efectivamente, es mejor hacerlo en instalaciones en pruebas, y en ese caso, quién quiera compartir su experiencia, es bienvenida 😉

  5. Avatar de Alex

    Hola, muy interesante el post! Muchas gracias!
    Se me plantea otra cuestio, y es que no me deja crear subcarpetas ni subdominio, segun mis proveedores por .htcacces. Sabrían indicarme la modificación que he de hacer para solucionarlo?
    Un saludo y muchas gracias!

    1. Avatar de Rocío Valdivia
      Rocío Valdivia

      Hola Alex, ¿quiéres decir que en tu hosting no te permiten modificar el archivo .htacces de tu instalación de WP?