Los multisitios WordPress son una colección de sitios web independientes que comparten la misma instalación de WordPress. Los sitios de la red son sitios virtuales, lo que significa que no tienen su propio directorio en el servidor, aunque sí tienen directorios separados para carga de archivos y tablas separadas en la base de datos.
En este post te daré una introducción a WordPress Multisite. Será una guía de usuario básica con el objetivo de señalar los pros y los contras de Multisite VS instalaciones de un sitio único, y para mostrarte cómo convertir un sitio de WordPress en una red Multisite.
En primer lugar, intentaré darte una idea de las muchas razones para instalar una red, y por el contrario muchos factores que podrían impedirte instalar un Multisitio WordPress. A continuación, proporcionaré una visión general de los tipos de redes disponibles, describiré las principales características de cada tipo y los requisitos del sistema que podrían forzarte a elegir un tipo en lugar de otro. Por último, vamos a profundizar en el proceso de instalación, y voy a mostrar lo sencillo que es la migración de una sola instalación de WordPress a una red de sitios.
Aviso: lo más probable es que, después de leer este post, cambies tu instalación única de WordPress a una instalación Multisitio.
Pros y contras de Multisitios WordPress
Es posible que tengas buenas razones para migrar de un único sitio a una instalación Multisitio. En primer lugar, un Multisitio te permite crear una red de sitios web independientes, y podrías dar a los usuarios del sitio la posibilidad de unirse a la red mediante la creación de sus propios blogs, al igual que los usuarios de WordPress.com.
Podrías pensar que este servicio no estaría en tu negocio, y sin embargo puedes decidir cambiar a WordPress Multisitio para ahorrar tiempo y trabajo. Con un Multisitio puedes configurar un número (incluso un gran número) de sitios web y administrarlos desde una sola instalación de WordPress. En un Multisitio, necesitarás actualizar el core, los temas y los plugins sólo una vez, porque todos los sitios de la red comparten la misma instalación.
Un Multisitio puede ahorrarte mucho tiempo y definitivamente aumentar la eficiencia en tu trabajo.
Por último, si necesitas presentar ejemplos vivientes de tu trabajo, puedes cambiar a Multisitio y activar un sub-sitio para cualquier proyecto. Esta práctica te ayudará a mejorar tu imagen profesional, proporciona un servicio de alta calidad a tus clientes, y te ayuda a mantener tu trabajo bien organizado.
En realidad, cambiar a Multisitio no siempre es posible. Nuestra primera y más importante consideración está relacionada con la seguridad: si tu sitio web es hackeado, toda la red se verá comprometida. Si decides cambiar a Multisite, considera la oportunidad de invertir mucho tiempo y recursos para mejorar la seguridad de la instalación.
La modalidad Multisitio no es una opción cuando se necesita compartir información entre sub-sitios. Si deseas crear una red de sitios web interconectados que compartan usuarios o datos, puede considerar instalar un solo sitio web de WordPress y dividirlo en secciones en lugar de una colección de sub-sitios separados.
Además, existen muchas otras razones que podrían impedirte instalar un Multisitio. Algunas de estas razones dependen de las peticiones y necesidades de tu cliente, otras están relacionadas con los requisitos del sistema y la configuración del servidor. A veces se pueden superar las limitaciones técnicas con la ayuda de tu proveedor de hosting, pero a veces definitivamente debes recurrir a un servicio de alojamiento más avanzado.
Subdominios y subcarpetas
Dependiendo de cómo maneja las URL, los Multisitios proporciona dos tipos de red diferentes:
- Redes basadas en dominios (Subdominios)
- Redes basadas en rutas (subcarpetas)
Una red basada en dominios utiliza URLs como http://mysite.network.com. Estos nombres de dominio pueden configurarse correctamente de varias maneras. El Codex sugiere uno de los siguientes:
Configuración de subdominios wildcard
Configuración de hosts virtuales
Creación de dominios addon o subdominios en el panel de control de alojamiento web
Una red basada en rutas utiliza URL como http://network.com/mysite. Este tipo de red requiere Pretty Permalinks habilitado para funcionar correctamente. Independientemente del tipo de red que vayas a instalar, puedes asignar dominios externos a los sub-sitios existentes. A partir de WordPress 4.5, el mapeo de dominio es una característica principal en WordPress Multisitio, y no necesitamos ya un complemento de terceros como WordPress MU.
Una vez que hayas decidido qué tipo de Multisitio instalar, debe preparar la instalación existente de WordPress para convertirla en una red:
- Actualiza la instalación existente y ejecutar una copia de seguridad completa de los archivos y la base de datos.
- Comprueba si los Permalinks funcionan correctamente.
- Desactiva todos los plugins activos. Los reactivarás más tarde.
- Si planea ejecutar WordPress desde su propio directorio, configura su instalación antes de activar el Multisitio.
Finalmente, podemos comenzar con el proceso de instalación.
Instalación de la red
Antes de poder instalar la red Multisitio, tenemos que habilitar la funcionalidad de configuración de red. Para lograr esta tarea, sólo necesitamos definir la constante WP_ALLOW_MULTISITE en wp-config.php:
/ * Multisite * / Define ('WP_ALLOW_MULTISITE', true);
Este código debe agregarse por encima de la siguiente línea comentada:
/* That's all, stop editing! Happy blogging. */
Actualiza el archivo wp-config.php y actualiza la página: el elemento de menú Configuración de red aparecerá en el menú Herramientas. Si WordPress te recuerda que debes desactivar todos los plugins activos, desactiva y vuelve a la página de configuración de red.
Ahora tenemos que elegir el tipo de red que vamos a instalar entre las opciones basadas en el dominio y la ruta.
Para evitar conflictos entre las URL de las páginas del sitio original y las URL de los nuevos sitios de la Red, en este momento no se permitirá crear una red basada en dominios en aquellas instalaciones que tengan más de un mes. De todos modos, como explicaré en un momento, puedes editar manualmente el archivo wp-config.php más tarde para cambiar a una red de subdominio.
Esta página muestra la dirección del servidor y dos campos de formulario cuyos valores definen el título de red y el correo electrónico de administración de red.
A continuación, haz una copia de seguridad del archivo wp-config.php existente y ejecuta la configuración de red.
En la siguiente página, WordPress proporciona instrucciones detalladas sobre los cambios que se deben realizar en los archivos de configuración. En el archivo wp-config.php define las siguientes constantes:
define( 'MULTISITE', true ); define( 'SUBDOMAIN_INSTALL', true ); define( 'DOMAIN_CURRENT_SITE', 'carlo.kinsta.com' ); define( 'PATH_CURRENT_SITE', '/' ); define( 'SITE_ID_CURRENT_SITE', 1 ); define( 'BLOG_ID_CURRENT_SITE', 1 );
Define SUBDOMAIN_INSTALL como true si estás instalando una red basada en el dominio, false si estás instalando una red basada en ruta. Puedes cambiar el tipo de red más tarde, aunque WordPress advierte que no será posible.
Nota: con el fin de evitar conflictos entre una publicación existente o un slug de alguna página y la ruta de un sitio web, WordPress no te permitirá instalar una red basada en rutas en instalaciones anteriores a un mes. De todos modos, puedes instalar una red basada en dominios y, a continuación, cambiar a una red basada en rutas más tarde cambiando el valor de SUBDOMAIN_INSTALL en wp-config.php.
Los usuarios de Apache deben reemplazar las directivas .htaccess existentes. El nuevo archivo será un poco diferente entre instalaciones sub-carpeta y sub-dominio. En el ejemplo siguiente se muestra el archivo .htaccess de una instalación de sub-carpeta:
RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [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]
En una instalación sub-dominio, el archivo .htaccess cambiará de la siguiente manera:
RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] # add a trailing slash to /wp-admin RewriteRule ^wp-admin$ wp-admin/ [R=301,L] RewriteCond %{REQUEST_FILENAME} -f [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^ - [L] RewriteRule ^(wp-(content|admin|includes).*) $1 [L] RewriteRule ^(.*\.php)$ wp/$1 [L] RewriteRule . index.php [L]
Cuando hayas terminado con wp-config.php y .htaccess, cierra la sesión y vuelve a iniciar sesión. El menú Mis sitios debe aparecer en el lado izquierdo de la barra de herramientas de WordPress.
La red está en funcionamiento y ahora podemos habilitar los complementos que previamente inhabilitamos.
Conclusiones y lecturas adicionales
A partir de ahora serás el Super Admin de la Red y el administrador del sitio original.
En el panel de la Red, podrás crear, configurar y eliminar sub-sitios, instalar temas y plugins, administrar usuarios de red, ejecutar actualizaciones y configurar la configuración de la red.
En los cuadros de mandos del sub-sitio puedes realizar cualquier tarea de administración disponible para un usuario administrador de WordPress con algunas diferencias cuando se trata de temas y plugins, que se pueden instalar, actualizar y eliminar sólo en el área de administración de red.
A veces, convertir un solo sitio en un Multisitio no es tan sencillo como lo es para los sitios web alojados en algunas empresas de hosting. Si necesitas saber más acerca de la configuración de DNS, los requisitos del sistema y otros detalles técnicos, consulta los siguientes recursos (inglés):
- Antes de crear una red
- Crear una red
- Mapeo de dominios multisitio WordPress
- Administración de Red Multisite
¿Tienes alguna instalación de Multisitio WordPress? Comparte con nosotros tu experiencia en los comentarios.