Статьи

Перемещение WordPress: Перемещение мультисайтовой сети

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

В этой серии из семи частей я покажу вам, как перемещать сайт WordPress, сосредоточив внимание на нескольких различных сценариях:

  • использование плагинов для перемещения одного сайта WordPress
  • перемещение вашего сайта из подкаталога в корневой каталог
  • перемещение одного сайта WordPress вручную
  • перемещение многосайтовой сети WordPress (эта часть)
  • перемещение блога из сети мультисайтов
  • перемещение сайта в сеть мультисайтов

Чтобы следовать этому уроку, вам понадобится:

  • Установка WordPress с работающими темами и плагинами, а также некоторым контентом — сообщениями, страницами, медиа — что бы ни случилось на вашем сайте! В вашей установке должен быть активирован Multisite.
  • Второе место, куда вы хотите переместить свой сайт.
  • FTP-клиент и редактор кода
  • Доступ к phpMyAdmin.

WordPress Multisite по сути состоит из тех же элементов, что и любой сайт WordPress:

  • база данных
  • ваши темы и другие файлы в каталоге wp-content
  • Сам WordPress (с включенным мультисайтом)

Но, как вы знаете, если вы работаете с Multisite, он не хранит контент так, как это делает обычная установка WordPress. Multisite создает дополнительную папку под названием sites в каталоге wp-content/uploads , которая содержит загрузки и плагины, относящиеся к каждому сайту. Самое замечательное в этом то, что до тех пор, пока вы перемещаете папку uploads , все будет хорошо.

Примечание. Если вы установили Multisite до версии WordPress 3.5, у вас не будет каталога сайтов в wp-content/uploads . Вместо этого в папке wp-content folder вас будет каталог blogs.dir . Это, в свою очередь, будет иметь папку для каждого сайта, которая будет иметь подпапку с именем files , которая будет иметь подпапки для ваших загрузок по дате, так же, как для обычной установки WordPress. Позже в этом уроке я рассмотрю, что вам нужно сделать, чтобы ваша миграция работала, если это так.

Итак, как вы двигаетесь? Ответ зависит от вашей настройки. То, что вам нужно будет сделать, чтобы перенести установку Multisite, будет зависеть от следующего:

  • Ваши сайты настроены с использованием поддоменов или подкаталогов?
  • У вас настроено сопоставление доменов, чтобы у всех ваших сайтов был свой домен, указывающий на них в вашей сети Multisite?
  • Вы хотите переместить их всех в новый домен с теми же настройками, что и сейчас? Или вы просто хотите переместить один или несколько сайтов?

Чтобы ответить на эти вопросы, я буду работать, хотя это поэтапно. Сначала я покажу вам, как перенести всю установку Multisite с подкаталогами. Тогда я посмотрю на поддоменах. И тогда я разберусь, что вам нужно сделать, если на ваших сайтах настроены собственные домены.

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

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

Это особенно важно, если ваш сайт был создан до WordPress 3.5 и имеет эту папку blogs.dir . В этом случае WordPress запустит сайт в режиме совместимости, а это означает, что вы можете придерживаться старой структуры папок и копировать файлы, как они есть.

Но вы должны запустить обновление, даже если это не так, чтобы обеспечить совместимость.

Прежде чем начать, сделайте резервную копию вашего сайта:

  • ваши загрузки
  • темы и плагины, которые вы использовали, на случай, если возникнут проблемы с их переустановкой на новом сайте
  • папка blogs.dir (если она есть — см. выше) и ее содержимое
  • ваша база данных

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

В этом уроке я буду использовать CPanel и phpMyAdmin. Если ваш хостинг-провайдер не предоставляет их или вы работаете с локальной установкой, вам нужно будет использовать инструменты, которые вам предоставляются. Например, для локальной установки MAMP и WAMP предоставляют аналогичные инструменты для управления базами данных и таблицами.

Как и следовало ожидать, это самый простой из всех, и не слишком отличается от перемещения нормального сайта WordPress.

На вашем старом сайте откройте экран « Постоянные ссылки» , который вы найдете в меню «Настройки». Чтобы отключить «красивые постоянные ссылки», выберите параметр « По умолчанию» и нажмите кнопку « Сохранить изменения» .

Это не всегда необходимо, но может избавить вас от проблем, если постоянные ссылки на вашем новом сайте настроены не так, как на старом сайте.

Вы можете создать резервную копию базы данных одним из двух способов:

  • используя phpMyAdmin (метод, который я буду использовать здесь)
  • используя плагин резервного копирования, такой как WP-DB-backup , который будет либо отправлять по электронной почте, либо загружать копию вашей базы данных

В phpMyAdmin для старого сайта выберите нужную базу данных и нажмите вкладку « Экспорт ». Чтобы загрузить базу данных, нажмите кнопку « Перейти» . База данных будет загружена на ваш локальный компьютер в виде файла sql.

Экспорт баз данных с текущего сервера

Если я собираюсь редактировать базу данных (что вам нужно будет сделать, если вы загружаете сайт из локальной установки или меняете имя домена), я делаю копию базы данных на этом этапе и добавляю префикс к ее имени. со old- . Это резервная копия, а оригинал — тот, который я отредактирую.

Затем используйте ваш FTP-клиент для загрузки содержимого wp-content со старого сайта.

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

ВАЖНО: Убедитесь, что вы устанавливаете Multisite с теми же настройками, что и у старой установки Multisite. Если вы переключитесь с поддоменов на подкаталоги или наоборот, ваши ссылки будут разорваны. Стоит проверить файлы wp-config.php и .htaccess на каждом сайте, чтобы убедиться, что они одинаковые.

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

Используя FTP, скопируйте файлы из загруженной копии каталога wp-content в новый удаленный каталог wp-content , используя ту же структуру папок, что и в вашей резервной копии.

Сделай себе кофе. Эти файлы могут занять некоторое время для загрузки.

Примечание. Если у вас есть каталог blogs.dir и вы обновили свой старый сайт до последней версии WordPress до запуска, просто загрузите его так же, как и все остальное.

Пока вы ждете загрузки этих файлов (и пока вы пьете этот кофе), откройте исходный файл базы данных со старого сайта, чтобы вы могли отредактировать его. Используя предпочитаемый текстовый редактор, замените все экземпляры старого URL-адреса сайта новым URL-адресом.

Например, если ваш старый URL-адрес oldsite.com , вы должны изменить его на newsite.com .

Вы можете ускорить это, используя команду замены в текстовом редакторе — их может быть тысячи. Пропустите http:// из вашего поиска, так как некоторые таблицы в вашей базе данных хранят URL сайта без него, и если вы используете субдомены, любые ссылки, содержащие одну из них, не будут работать.

Сохраните и закройте файл — вы будете использовать его для заполнения базы данных вашего нового сайта.

Примечание. Другой способ сделать это — использовать инструмент поиска и замены из InterConnectIT. Это запустит процесс поиска и замены для вас, без необходимости вручную редактировать файл базы данных.

В phpMyAdmin для вашего нового сайта создайте новую базу данных:

  • На домашней странице CPanel выберите базы данных MySQL .
  • В MySQL создайте новую базу данных с уникальным именем.
  • Нажмите на Создать базу данных .

Еще в phpMyAdmin , загрузите базу данных, которую вы редактировали:

  • Перейдите на вкладку « Импорт ».
  • Нажмите кнопку « Выбрать файл» .
  • Выберите новую (отредактированную) базу данных, которую вы создали, и нажмите « Выбрать» или « ОК» .
  • Нажмите кнопку « Перейти» .
  • Через некоторое время (в зависимости от размера вашей базы данных) вы увидите сообщение о том, что загрузка успешно завершена:
Импорт успешно завершен

Прежде чем закончить, очистите кеш вашего браузера. Это позволяет избежать любых проблем с доступом к вашему новому сайту, если браузер кэшировал содержимое со старой версии сайта.

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

Посетите экран Постоянные ссылки и снова включите симпатичные постоянные ссылки.

Наконец, вам может понадобиться привести в порядок свои виджеты. Проверьте их и исправьте те, которые не сделали ход, как они должны. Если вы установили и активировали все плагины перед перемещением базы данных, вам не нужно этого делать.

Ваш новый сайт теперь будет работать так же, как ваш старый.

Субдомены усложняют ситуацию, но будут работать, если вы следовали приведенным выше инструкциям, чтобы не использовать http:// при замене вашего доменного имени в базе данных.

Если ваш старый сайт был по адресу http://oldsite.com а у вас был дочерний сайт по адресу http://blog1.oldsite.com , ваш редактор кода не нашел бы его, если бы вы искали http://oldsite.com . Поэтому убедитесь, что вы заменили все экземпляры oldsite.com на newsite.com .

Если вы используете подключаемый модуль сопоставления доменов, в вашей базе данных могут быть записи, которые соответствуют сопоставленным доменам, а не домену вашей многоузловой установки. Позвольте мне объяснить это на примере:

Допустим, у вас есть дочерний сайт под названием mysite . Его местоположение на вашем домене — http://oldsite.com/mysite . Вы настроили сопоставление для него с домена http://mysite.com .

Любые ссылки на вашем сайте, созданные с помощью WordPress, будут использовать многосайтовый домен, поэтому, например, ссылка на страницу «О программе» в навигации будет иметь значение href http://oldsite.com/coolsite/about ,

Тем не менее, в вашей базе данных также могут быть ссылки с href http://coolsite.com/about , что может быть в том случае, если редакторы сайтов вручную добавили ссылки в контент.

Хорошая новость заключается в том, что до тех пор, пока вы обновляете сопоставление своего домена, это не будет иметь значения, поскольку любые ссылки на ваш сопоставленный домен будут по-прежнему применяться к тому же сопоставленному домену, независимо от того, что изменился многосайтовый домен, на который оно сопоставляется.

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

Что вам нужно сделать здесь, будет зависеть от того, как настроено сопоставление домена:

  • Если вы использовали припаркованные домены в CPanel, чтобы указать свой домен в сети Multisite, и вы переместили серверы или хосты, вам необходимо обновить серверы имен для вашего домена. Получите доступ к CPanel для своего нового сайта и добавьте все домены на свой новый сайт так же, как вы делали для своего исходного сайта. Убедитесь, что вы выбрали Wild Card Redirect, чтобы внутренние URL-адреса работали правильно.
  • Если вы использовали записи CNAME вам необходимо обновить их у своего регистратора доменов или в CPanel.
  • Если вы использовали записи A чтобы указать уникальный IP-адрес для вашей установки Multisite, и вы переходите на новый сервер, вам необходимо получить новый уникальный IP-адрес у вашего хостинг-провайдера. Затем обновите IP-адрес в настройках сопоставления доменов для вашего нового сайта, а также измените запись A для каждого домена, указывающего на ваш сайт. Если ваши сайты управляются несколькими администраторами, которые также контролируют свои собственные DNS, это может быть самой большой головной болью.

Примечание. Если вам необходимо получить доступ к сайтам в вашей сети до того, как параметры DNS их доменов будут изменены, а сопоставленный домен настроен в качестве основного домена, вы можете изменить это в настройках сопоставления доменов для вашей сети, выбрав « Настройки»> Домены на экранах администрирования сети.

Теперь выполните последние шаги так же, как для сайта без сопоставления доменов (см. Выше).

Это руководство длиннее, чем руководство по переносу установки WordPress с одного сайта, потому что перемещение WordPress Multisite немного сложнее. Если у вас установлена ​​«ванильная» мультисайтовая установка, вещи не слишком отличаются от одного сайта, но вам также может потребоваться учитывать субдомены / подкаталоги, папку blogs.dir и сопоставление доменов.

Однако, если вы выполните описанные выше шаги, вы сможете успешно переместить свой сайт.