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

ÚLTIMOS ARTÍCULOS

Cierre Ventana

Cómo instalar WordPress Agent Skills en Mac

Los asistentes de IA como Claude Code, Cursor o Copilot son potentes, pero cuando trabajan con WordPress tienden…

Cierre Ventana

Congreso ITN Granada: IA aplicada a la estrategia comercial — lo que me llevé

El pasado 17 de febrero asistí al congreso ITN organizado por EIG y Stezano Consulting en el Palacio…

Cierre Ventana

Proteger WordPress desde dentro: cómo funciona realmente el equipo de plugins

Ayer tuve la oportunidad de pasarme por el podcast Un billete a Chattanooga, al que os animo que…