Преобразовать существующий сайт в сеть

9

У нас есть существующий сайт WP3, и мы хотели бы сделать его многопользовательским, а не несколько установок, которые мы сейчас имеем.

Я добавляю WP_ALLOW_MULTISITEкод и перезапускаю - запускаю Сеть, а затем добавляю многосайтовый код в wp-config.phpи .htaccess. Как только я это делаю и выхожу из системы - он больше не находит соединение с базой данных. В предыдущих попытках я заметил, что в сетевой базе данных есть wp_blogsтаблица и несколько других таблиц, где в стандартной установке этого нет. Я проверил все наши другие сайты и базы данных. Есть еще чем заняться?

У нас есть основной сайт с другой независимой установкой, которая обрабатывает пресс-релизы. Я ищу объединение в одну и мне нужна отдельная структура постоянных ссылок (вторая установка помещает сообщения в /resources/media_center/pr).

kqw
источник
Миграция нескольких блогов в WordPress 3.0 Multisite < codex.wordpress.org/… >?

Ответы:

12

Не пытайтесь конвертировать существующий сайт.

Что вы хотите сделать, это настроить новый сайт с чистой установкой WordPress. Большинство сетей, которые я начал, являются поддоменами в соответствии с http: //network.blog.url или http: //dashboard.blog.url . Первый созданный вами сайт станет сайтом панели мониторинга для остальной части сети ... вот почему вы хотите начать с чистого сайта.

Настроить

Во-первых, установите WordPress как обычно. Вам понадобится новая база данных и новая загрузка WordPress 3.0.3 .

Затем добавьте define('WP_ALLOW_MULTISITE', true);выше линии , которая говорит, /* That's all, stop editing! Happy blogging. */в wp-config.php.

Теперь вернитесь на свой сайт и выберите Администрирование »Инструменты» Сеть, чтобы активировать установку по сети. Вам будет предоставлена ​​дополнительная информация для wp-config.php... скопировать этот код между тем, где вы написали define('WP_ALLOW_MULTISITE', true);и где написано /* That's all, stop editing! Happy blogging. */. Не меняйте ничего в файле конфигурации.

Отредактируйте свой .htaccessфайл и замените все остальные правила WordPress на правила, предоставленные вам на странице сетевой установки.

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

Перенос других сайтов

Теперь вы хотите начать перенос других сайтов. Начните с основного сайта и создайте новый «Сайт» из WordPress. Вам нужно будет скопировать кучу настроек вручную, но вы, вероятно, сможете быстро их настроить.

Экспортируйте свои посты и страницы со старого сайта и импортируйте их на новый.

Скопируйте свою тему и все плагины, которые вы хотите использовать.

Если у вас есть только несколько пользователей, может быть проще попросить их зарегистрироваться после перемещения сайта. Вы можете переносить пользователей со старого сайта на новый сайт напрямую через базу данных ... но это включает в себя написание SQL-запросов для экспорта вашей старой wp_usersтаблицы, очистки информации, относящейся к базе данных (т. Е. Идентификатора), и написания другого запроса для импорта их в новая база данных. Выполнимо, но отнимает много времени.

После переноса первого сайта начните со следующего.

Сопоставление доменов

Если ваши сайты изначально были в нескольких доменах, вам нужно установить подключаемый модуль сопоставления доменов, чтобы все работало правильно. Я рекомендую (и использую на всех своих сайтах) плагин WordPress MU Domain Mapping .

Сделай глубокий вдох

Я знаю, это звучит как много, и это может быть пугающим, но это возможно. В прошлом месяце я перенес сеть из 12 блогов с 1400 пользователями. Прошлой ночью я перенес сеть из 5 блогов. Оба занимают примерно одинаковое количество времени и следуют точно так же, как я описал выше. Не волнуйтесь, вы пройдете через это.

Если вы потеряли соединение с базой данных с первой попытки, возможно, это из-за того, что вы что-то переписали wp-config.phpпо ошибке. У меня было несколько раз, когда открытие этого файла в Блокноте удаляло все пробелы с концов строк, разрывая файл и уничтожая соединение с базой данных.

Именно по этой причине самая первая инструкция в любой документации WordPress, касающаяся обновлений или миграции, заключается в резервном копировании базы данных и файлов .

EAMann
источник
Включение мультисайта на существующем сайте - это то, что мультисайт был добавлен в ядро ​​WordPress и больше не является отдельной установкой. В самом деле, если вы делаете свою домашнюю работу, а теперь и любой другой вопрос, включить его на сайт любого размера и возраста так же легко (а иногда и меньше), чем создать совершенно новый сайт. Я рассмотрел многое из этого здесь: wpebooks.com/2010/09/how-to-enable-multisite-in-wordpress
andrea_r
Да, это может быть легко включить его на любом существующем сайте, но если вы хотите, чтобы этот существующий сайт стал сетевой панелью мониторинга - когда включена единая регистрация, у всех есть учетная запись на первом сайте. Таким образом, если ваш существующий сайт должен быть родительским, непременно конвертируйте существующий сайт. Если нет определенного «родительского» сайта, хотя (то есть все сайты находятся на равных игровых полях), лучше создать новый пустой сайт, который будет использоваться в качестве панели мониторинга сети, и импортировать существующие сайты в новую сеть.
EAMann
0

Время прошло, к счастью, сейчас у нас есть более продвинутые инструменты. Поэтому я просто хочу добавить, что теперь миграцию можно сделать намного лучше и проще, используя WP-CLI и плагин WP-CLI MU-Migration . Большинству людей, вероятно, придется установить, по крайней мере, последний, может даже оба, обратитесь к документации для этого.

После этого экспорт может выглядеть так:

wp mu-migration export all site.zip --plugins --themes --uploads

И импорт:

wp mu-migration import all site.zip

Конечно, это самый простой обзор, доступно больше параметров. Документация носит информативный характер. Очевидно, что резервные копии обязательны для любой важной операции. В целом это отличные инструменты, которые могут сделать вашу жизнь намного проще.

Nicolai
источник