WordPress Multisite позволяет управлять сотнями сайтов из одной установки WordPress. Все сайты используют одну кодовую базу, но имеют независимые данные, темы и плагины.
Когда использовать Multisite
- Сеть региональных сайтов компании
- Мультиязычный сайт (отдельный подсайт на каждый язык)
- Образовательная платформа с сайтами для каждого курса
- Сеть блогов или медиапортал
Активация Multisite
1. Добавить в wp-config.php (до строки «That's all, stop editing!»)
define('WP_ALLOW_MULTISITE', true);
2. Настроить сеть
Перейдите Инструменты → Настройка сети. Выберите тип: поддомены (site1.example.com) или поддиректории (example.com/site1/).
⚠️ Поддомены требуют wildcard DNS-записи:
*.example.com → IP.3. Добавить в wp-config.php
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true); // false для поддиректорий
define('DOMAIN_CURRENT_SITE', 'example.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
4. Обновить .htaccess
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
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]
Управление сетью
| Действие | Где |
|---|---|
| Создать подсайт | Мои сайты → Админ сети → Сайты → Добавить |
| Активировать плагин для всей сети | Плагины → Network Activate |
| Установить тему для всей сети | Темы → Network Enable |
| Квота дискового пространства | Настройки сети → Загрузки |
💡 Суперадмин сети имеет доступ ко всем подсайтам. Обычный администратор видит только свой сайт.