Два сайта на одном движке WordPress

Как создать два (или несколько) сайта, которые будут использовать один движок WordPress и одну базу данных.

1.   Если основной домен уже подключен к хостингу, то этот шаг пропускаем, если нет, то подключаем его:

  • в панели управления хостингом (CPanel) в блоке «Домены» переходим по
    ссылке «Дополнительные домены». Вписываем имя нового домена: site1.ru, корневой каталог документов (автоматически он устанавливается /public_html/ site1.ru) не меняем.
  • в панели управления хостингом (CPanel) в блоке «Базы данных»
    переходим по ссылке «Базы данных MySQL». Создаем базу данных и
    пользователя (или привязываем существующего)
  • указываем для домена DNS сервера из настроек хостинга (это выполняется на стороне регистратора)

2.   Заливаем WordPress в папку корневого каталога основного домена: /public_html/ site1.ru

3.   Редактируем файл wp-config.php.

  • задаем свои  параметры MySQL (как и при обычной установке),
  • задаем префиксы таблиц для каждого сайта (таблицы обоих сайтов будут находиться в одной БД, но отличатся префиксами).

Для этого заменяем строку
$table_prefix  = ‘wp_’;
на

$prefix = $_SERVER["HTTP_HOST"]; //запоминаем имя сайта
$prefix = str_replace("www.", "", $prefix); //убираем из имени www.
$prefix = str_replace("pp.ua", "", $prefix); //убираем доменную зону
$prefix = str_replace("-", "", $prefix); //убираем тире
$prefix = str_replace(".", "", $prefix); //убираем точки
$table_prefix = $prefix."_" ; //определяем полученное имя как префикс для таблиц БД

4.   Устанавливаем WordPress для первого сайта

5.   Приступаем к настройке второго домена:

  • в панели управления хостингом (CPanel) в блоке «Домены» переходим по
    ссылке «Дополнительные домены». Вписываем имя нового домена: site2.ru и меняем корневой каталог документов (автоматически он устанавливается /public_html/ site2.ru) на тот же, который был установлен для первого сайта (/public_html/ site1.ru). Таким образом, при обращении к сайту site2.ru он будет искать информацию для запуска и подключения в папке /public_html/site1.ru (где уже залит WordPress).
  • указываем для второго домена DNS сервера из настроек хостинга.

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

7.   Для файлов sitemap в корневом каталоге основного домена /public_html/ site1.ru создаем отдельную папку (например, sitemaps) в ней будут храниться  карты сайтов. Для первого сайта это будет файл site1.ru.xml, а для второго – site2.ru.xml (их создавать не нужно, они будут создаваться плагином).

8.   Там же (в корневом каталоге)

  • создаем файл robots.phpс текстом (строки,
    начинающиеся с «echo», за исключением двух последних, можно изменить или
    добавить нужные, чтобы получить свой текст robots.txt):
<?php
header("Content-Type: text/plain");
echo "User-agent: *\\r";
echo "Disallow: /xmlrpc.php\\r";
echo "Disallow: /wp-\\r";
echo "Disallow: feed\\r";
echo "Sitemap: http://".$_SERVER[\'HTTP_HOST\']."/sitemaps/".$_SERVER[\'HTTP_HOST\'].".xml\\r";
echo "Sitemap: http://".$_SERVER[\'HTTP_HOST\']."/sitemaps/".$_SERVER[\'HTTP_HOST\'].".xml.gz\\r";
?>


  • создаем файл .htaccessс текстом:
RewriteEngine On
RewriteRule robots.txt robots.php
RewriteRule sitemap.xml sitemaps/%{HTTP_HOST}.xml

9.   Остальные настройки делаем для каждого сайта отдельно (из панели администратора).

  • в пункте «Медиафайлы» из меню «Параметры» прописываем путь для загрузки картинок (по умолчанию wp-content/uploads), как вариант можно добавить имя сайта (wp-content/uploads/site1) и ставим «галочку» напротив «Помещать загруженные мной файлы в папки по месяцу и году».
  • активируем плагин Google XML Sitemaps и
    переходим в появившийся пункт «XML-Sitemap» из меню «Параметры». В блоке
    «Расположение Вашего файла с картой сайта» выбираем автоматическое
    определение и указываем имя файла (для первого сайта это будет sitemaps/site1.ru.xml) и сохраняем обновления.
  • заходим в административную панель второго сайта и повторяем для него те же действия.

10.   На этом настройку движка для двух сайтов можно считать законченной. Дальше работаем с созданными сайтами как обычно.

Красивое и понятное, на мой взгляд, решение проблемы с robots.txt  и картами сайтов нашла у Алекса Волкова .

Внимание!!! Если вы используете для различных сайтов один и тот же шаблон, все
изменения, внесенные в текст файлов шаблона будут отображаться на обоих
сайтах (как вариант можно попробовать записать один и тот же шаблон под
разными именами).

P.S. Не забывайте изменять все выделенное красным ( например, site1.ru, site2.ru) на свои значения) Успехов всем!

Добавить комментарий