Configurar WordPress Multisitio

Un WordPress Multisitio es una instalación que comparte los mismos archivos, y que genera diferentes tablas según las diferentes instalaciones y que por tanto, comparte funcionalidades entre ellas.

Es una solución muy inteligente para ciertas necesidades como puede ser los sitios multidioma (como este), multipaís, división de funcionalidades para hacer menos pesado el sitio principal.

Esto es debido a que podemos crear/instalar plugins para nuestras diferentes instalaciones. Puede darse la circunstancia que activemos toda una tienda online en un subsitio con el objetivo de mantener el máximo rendimiento en el portal principal. Este tipo de instalaciones se suele dar en sitios muy grandes.

Esta guía es una recopilación de diferentes sitios para poder instalar el multisitio con las dos configuraciones: subdominios y subcarpetas. La opción de subdominios también se podrá utilizar en la configuración multidominios. Sólo será necesario una vez creado un subdominio, cambiarle la dirección a la definitiva.

En Closemarketing tenemos este servicio de Desarrollo WordPress Multisitio.

El sitio principal es el HandBook oficial de WordPress, que lo primero que nos indica es pegar esta linea en el archivo wp-config.php:

define( 'WP_ALLOW_MULTISITE', true );

Esto habilitará un nuevo menú en Herramientas > Administración de la red.

Configuración subcarpetas

Configuración en wp-config

define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'dominio.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

Configuración en htaccess

# BEGIN WordPress Multisite SUBFOLDER
<IfModule mod_rewrite.c>
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]
</IfModule>

Configuración con subdominios

define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true);
define('DOMAIN_CURRENT_SITE', 'dominio.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

Htaccess si es subdominio

# BEGIN WordPress Multisite SUBDOMAIN
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
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)$ $1 [L]
RewriteRule . index.php [L]
</IfModule>

Y otra cosa importante para los multisite, es que si nos equivocamos con la dirección y ponemos www o sin www, se redirigirá a una página de registro del nuevo site. Esto se utiliza en contadas ocasiones, por lo que nos interesa desactivarlo, añadiendo este código en wp-config:

define( 'NOBLOGREDIRECT', 'https://dominio.com' );

Configuración cookies para multidominio

Si quieres la opción de multidominio, esto es dominio.com, dominio.es, etc. para que no haya problemas con las cookies, deberás añadir estas lineas en wp-config:

define('COOKIE_DOMAIN', $_SERVER['HTTP_HOST'] );

    Mentions

  • 💬 Actualidad para profesionales de WordPress (Edición #218) - Enlace Permanente

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

ÚLTIMOS ARTÍCULOS

Cierre Ventana

Hacer un mundo mejor con WordPress

Este pasado fin de semana del 23 de marzo estuve en el evento WordCamp Torrelodones 2024, un congreso…

Cierre Ventana

Linked in Lunch Granada’24

El pasado martes se estrenó en Granada la primera edición de Linked Lunch, un evento basado en desvirtualizar…

Cierre Ventana

Soy parte del Equipo de Revisión Oficial de Plugins de WordPress

TL;DR: Soy parte del equipo de revisión de plugins de WordPress y estoy esponsorizado por Hostinger. ¿Y qué…