Mapping доменов в WordPress Multisite

WordPress Multisite Domain Mapping — это технология, позволяющая назначать полностью уникальные доменные имена (например, site1.com) отдельным сайтам внутри сети WordPress Multisite вместо использования поддоменов (site1.coolnetwork.com) или поддиректорий (coolnetwork.com/site1).

Несмотря на наличие разных доменов, все сайты продолжают работать на одной установке WordPress, что значительно упрощает администрирование. Для посетителей сайты будут выглядеть как абсолютно независимые ресурсы.

С WP 4.5, Domain Mapping является нативной функцией WordPress! Т.е. никакие плагины не нужны!

Эта функция может пригодится в различных сценариях, например:

  • Управление клиентскими сайтами: Фрилансеры могут объединять сайты клиентов в одну сеть для упрощения обновлений и обслуживания.

  • Мультиязычные сайты: Использование локализованных доменов для разных стран (например, .es, .de, .co.uk).

  • Сайт как услуга (WaaS): Позволяет пользователям создавать собственные сайты на вашей платформе с использованием их личных доменов (как на WordPress.com).

  • Корпоративный брендинг: Крупные предприятия могут создавать отдельные сайты для разных продуктов (например, iphone.com и macbook.com), управляя ими из одной панели.

Инструкция по включению маппинга

Шаг 1: Подготовка сети Multisite

Убедитесь, что ваша сеть WordPress Multisite правильно настроена и работает без ошибок. Вы должны иметь возможность создавать новые сайты в поддиректориях или на поддоменах перед тем, как привязывать к ним уникальные домены.

Шаг 2: Настройка DNS

Ваш новый уникальный домен должен указывать на сервер, где установлен WordPress. Вам потребуется настроить DNS-записи у регистратора домена:

  • A-запись: Направляет домен на IP-адрес вашего сервера.
  • CNAME: Используется для сопоставления поддоменов (например, www) с основным доменом.

Шаг 3: Добавление домена на хостинг

Необходимо добавить новый домен в панель управления хостингом (например, cPanel) как псевдоним (Alias) или припаркованный домен (Parked Domain). Это позволит серверу понимать, какой контент показывать при обращении к новому адресу.

Шаг 4: Привязка домена в админке WordPress

  1. Зайдите в Управление сетью > Сайты (Network Admin > Sites).
  2. Нажмите «Изменить» (Edit) под нужным сайтом.
  3. В поле «Адрес сайта (URL)» (Site Address) введите полный адрес нового домена, включая протокол (например, https://example.com).
  4. Сохраните изменения.

Важные технические нюансы

SSL-сертификаты

Для безопасности и SEO критически важно установить SSL-сертификаты для всех привязанных доменов. Рекомендуется использовать технологию SNI (Server Name Indication) для поддержки нескольких сертификатов на одном IP-адресе.

Решение ошибки входа (Cookies)

Одной из частых проблем является ошибка блокировки cookies при попытке входа в админку привязанного сайта. Для её решения добавьте следующую строку в файл wp-config.php после кода активации сети:

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

Это позволит WordPress корректно обрабатывать cookies для разных доменных имен внутри одной сети.

--

Источники: