В этой статье мы расскажем, что такое мультисайт WordPress, зачем он может вам пригодиться и как его правильно настроить для работы.
WordPress Multisite — это сеть веб-сайтов, которые используют одну WordPress-инсталляцию. Также они делят одну базу данных, но имеют разные таблицы в базе и разные директории для медиазагрузок.
Зачем использовать WordPress Multisite
Если у вас есть несколько сайтов, которые работают на WordPress, то вам будет гораздо легче ими управлять через Multisite. Вы становитесь суперадминистратором всей сети своих сайтов. Вы сможете:
- управлять доступом и уровнем ответственности для всех пользователей на всех сайтах вашей сети;
- управлять всеми функциями сайтов, включая доступ к плагинам, темам, приватным настройкам;
- обновлять плагины и темы для всех сайтов из одного меню;
- создавать новых пользователей и новые сайты;
- редактировать посты, страницы и комментарии на любом сайте вашей сети без необходимости быть добавленным в качестве пользователя на отдельный сайт;
- обновлять пароли и менять пользовательские детали профиля;
- иметь доступ ко всем опциям меню суперадминистратора через панель управления сетью.
С помощью WordPress Multisite вы сможете продавать или предоставлять бесплатно возможность создавать сайты на WordPress многим людям без необходимости осуществлять множество установок CMS.
Сразу хочется предупредить о недостатках использования мультисайта, с которыми вы можете столкнуться:
- чтобы быть суперадминистратором WordPress Multisite, потребуется опыт в управлении сайтами и в редактировании базовых файлов WordPress-инсталляции;
- некоторые темы и плагины могут не поддерживать Multisite и вы будете вынуждены искать альтернативы для них;
- если один из сайтов будет подвержен хакерской атаке или взломан, то последствия могут задеть и остальные сайты сети.
Если хотите создать мультисайт на WordPress — инструкция ниже вам в этом поможет.
Как настроить WordPress Multisite: установка и активация
Существуют три способа работы подсайтов:
- Поддомены (site1.domain.com, site2.domain.com и т.д.);
- Поддиректории (domain.com/site1, domain.com/site2 и т.п.);
- Через опцию использования паркованных доменов. Это не поддерживается базовой функциональностью WordPress Multisite и вам нужно будет использовать дополнительный плагин WordPress MU Domain Mapping, о котором мы расскажем ниже.
Чтобы использовать мультисайт WordPress, для начала необходимо включить его.
Если это новая установка, в cPanel это легко сделать с помощью меню Softaculous при установке WordPress. Просто отметьте опцию «Enable Multisite (WPMU)» и завершите установку CMS.
Понять, включена ли опция мультисайта, можно по wp-config.php файлу. Вы должны найти следующий код:
/* Multisite */
define('WP_ALLOW_MULTISITE', true);
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'domain.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
Это значит, что мультисайт активирован.
Важно отметить, что указанный выше код активирует создание веб-сайтов в поддиректориях. Для того же, чтобы использовать возможность создания сайтов на поддоменах, измените строку:
define('SUBDOMAIN_INSTALL', false);
на
define('SUBDOMAIN_INSTALL', true);
Если вы измените код обратно, то снова сможете создавать сайты в поддиректориях. То есть в принципе, вы можете создавать сайты и на поддоменах, и в поддиректориях, просто меняя код в зависимости от ваших потребностей.
Статья по теме:
Если же у вас уже есть WordPress-сайт и вы хотите превратить его в мультисайт, то вам необходимо будет внести изменения в wp-config.php файл. И добавить следующий код:
define('WP_ALLOW_MULTISITE', true);
🔔 Важно: рекомендуем сделать резервную копию WordPress-сайта перед внесением каких-либо изменений.
Сэкономьте свое время — закажите хостинг с предустановленным WordPress!
Всю скучную работу мы взяли на себя, вам остается зайти в админпанель и заняться дизайном сайта. Захотите начать с нуля — не проблема, переустановить WordPress можно в пару кликов с помощью автоустановщика скриптов ✔️
Тарифы хостинга для WordPress-сайтов подобраны таким образом, чтобы вы не платили за ненужные ресурсы, при этом сайт работал бесперебойно и быстро. В комплекте к хостингу получите удобную панель управления и круглосуточную умную службу поддержки 💪
Протестировать хостинг можно бесплатно в течение 30 дней. Понравится — оплатите продление, нет — ничего не потеряете.
После этого зайдите в панель управления WordPress >> Инструменты >> Установка сети.
Вы увидите опции выбора для подсайтов: поддомены или поддиректории.
🔔 Важно: на вашем сервере должен быть установлен модуль Apache mod_rewrite.
Если вы выберите опцию поддоменов, убедитесь, что у вас они включены. При выборе опции поддиректорий, никаких дополнительных изменений вносить не нужно.
После установки, вы увидите окно «Создать сеть сайтов на WordPress», где WordPress подскажет, какой код необходимо дополнительно добавить в wp-config.php и .htacсess файл.
При выборе создания сайтов в подпапках, код для wp-config.php выглядит так:
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', 'domain.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
Код для .htaccess файла:
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]
Если же вы выбрали поддомены, то необходимо будет добавить следующий код в wp-config.php:
define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', true);
define('DOMAIN_CURRENT_SITE', 'domain.com');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
Код для .htaccess:
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)$ $1 [L]
RewriteRule . index.php [L]
После редактирования .htaccess и wp-config.php, функция Multisite будет успешно активирована.
Остался последний шаг — создание директории «mu-plugins» с активированными плагинами, которые влияют на все сайты в Multisite-инсталляции. Директорию «mu-plugins» необходимо создать в папке wp-content. Убедитесь, что разрешения на новую папку соответствуют 0755.
Для дальнейшей работы с сетью ваших веб-сайтов необходимо перезайти в панель администратора.
Как создать подсайты
Подсайты — это все сайты, которые включены в сеть WordPress. Чтобы создать новый сайт, вы должны зайти в панель управления как суперадминистратор.
Перейдите в меню Мои сайты >> Управление сетью >> Cайты.
В меню Сайты выберите опцию «Добавить новый».
Здесь вам необходимо будет заполнить следующие поля:
Адрес сайта (URL): то, как именно будет выглядеть ваш сайт в адресной строке (например, site1.domain.com или domain.com/site1).
Название сайта: название для подсайта.
Язык сайта: язык нового подсайта.
E-mail администратора: контактный электронный адрес администратора. Если указанный e-mail отсутствует в базе, будет создан новый пользователь. На этот адрес будут отправлены имя пользователя и пароль.
И после этого нажмите «Добавить сайт».
После того, как вы добавили новый сайт, вы увидите его ID в адресной строке.
Эта информация пригодится вам для работы с WPMU Domain Mapping. Теперь перейдем к тому, как же с ним работать.
Зарегистрируйте свой домен с HOSTiQ.ua: это выгодно и удобно 🔥
✔️ Мы фиксируем стоимость доменов в долларах и сохраняем ее для продления доменов в большинстве зон. Мы не меняем цену, как нам вздумается.
✔️ Мы регистрируем домены более чем в 1200 доменных зонах: если желаемое имя занято в распространенных зонах вроде .com или .net, вы точно найдете удачный аналог.
✔️ Вместе с регистрацией домена мы на месяц бесплатно даем хостинг, на котором WordPress-сайты летают ✈️
Если у вас уже есть зарегистрированный домен, вы можете перенести его к нам. У нас круглосуточная умная служба поддержки и удобное управление DNS-записями. Обещаем заботиться о вашем домене, как о своем 🙂
Как настроить WPMU Domain Mapping
Если вам нужен мультисайт WordPress на разных доменах, то понадобится плагин Domain Mapping. Он позволяет вам использовать другие домены для создания сайтов в сети WordPress Multisite вместо стандартных поддоменов или поддиректорий.
Важно, чтобы нужный домен был добавлен в хостинговый аккаунт как паркованный домен, а не дополнительный. Также эта опция будет работать, только если WordPress Multisite установлен в root-директорию вашего главного домена.
Для начала установите плагин WordPress MU Domain Mapping, зайдя в администраторскую панель управления >> Мои сайты >> Управление сетью >> Плагины.
Затем активируйте его для сети.
Активация плагина также требует дополнительных шагов, поэтому перейдите в меню Мои сайты >> Управление сетью >> Настройки >> Domain mapping.
Там вы увидите сообщение:
Это сообщение говорит о том, что вам нужно скопировать файл sunrise.php (который сейчас расположен в root_domain_directory/wp-content/plugins/wordpress-mu-domain-mapping) в папку wp-content.
Также вам необходимо будет добавить следующий код в wp-config.php файл:
define( 'SUNRISE', 'on' );
После этого вернитесь в панель управления WordPress >> Мои сайты >> Управление сетью >> Настройки >> Domain mapping и завершите настройку плагина.
Нужно выполнить следующее:
- Указать Server IP address (это IP-адрес, который привязан к вашему хостинговому аккаунту) или Server CNAME domain (ваш главный домен). Этими действиями вы сообщите плагину о расположении сервера, где лежат файлы ваших сайтов.
- Определите опции для домена:
– Remote login — позволяет перенаправлять админ-страницы всех сайтов в сети на главный сайт. Если эта опция не выбрана, админ-ссылка для каждого веб-сайта не изменится.
– Permanent redirect — с помощью этой функции сайты в поддиректориях и на поддоменах будут перенаправляться на соответствующие дополнительные доменные ссылки.
– User domain mapping page — позволяет администратору сайта управлять дополнительными доменами внутри их отдельных панелей управления.
– Redirect administration pages to the site’s original domain name — эта опция должна быть включена, чтобы работала функция Remote login.
– Disable primary domain check — если эта опция включена, то настройки главного домена ваших сайтов будут игнорироваться. Но если один и тот же контент будет доступен сразу по нескольким доменам, это может вызвать проблему с дублирующим контентом.
После того, как вы активировали плагин, а также добавили паркованный домен в аккаунт, вы можете приступать к непосредственному использованию дополнительного домена в меню Мои сайты >> Управление сетью >> Настройки >> Domains.
Заполните следующую информацию:
- Domain — это должен быть ваш паркованный домен.
- Site ID — ID подсайта, который присваивается ему в момент создания.
- Primary — когда вы добавляете дополнительный домен, сайт получает несколько адресов. В зависимости от того, какой домен установлен как primary, именно на тот домен и будут переадресовываться остальные домены. Если вы добавляете отдельный домен к вашему сайту, то скорее всего вы захотите установить его как primary. Например, у вас есть domain.com/test1 и вы добавляете его к test1.com, то вероятно захотите установить test1.com как primary.
И еще немного о работе с темами WordPress. Так же, как и плагины, темы доступны для использования на любом сайте в сети. С помощью панели «Управление сетью» используйте опцию «Активировать для сети». Это активирует тему или плагин для использования на всех сайтах. Но вы также можете активировать их и на каком-то отдельном сайте в соответствующей панели управления.
Вот и все, теперь вы знаете, как настроить мультисайт в WordPress. Да, и еще одно: вы можете купить доменное имя дешево и быстро, а также специальный хостинг под WordPress и уже сейчас приступить к созданию своей мультисети.
Есть чем поделиться по теме? Пишите свои комментарии!
Полезные статьи по теме: