Перенос сайта WordPress на другой домен или хостинг

Перенос сайта WordPress на другой домен или хостинг обычно требуется в трех случаях:

  1. Изменение доменного имени
  2. Смена хостинга
  3. Перенос сайта с виртуального (локального) веб-сервера, на котором временно разрабатывался сайт

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

Поэтому у нас есть два основных варианта:

  1. Переносить все вручную с ручной/управляемой заменой ссылок
  2. Использовать специальные плагины

1.Перенос сайта вручную

Для этого необходимо иметь опыт использования PHPMyAdmin или желание разобраться. Все достаточно просто – в меню PHPMyAdmin есть две кнопки, которые нам это помогут сделать перенос сайта – Export/Import, а самое первое, что мы сделаем это Export таблиц базы данных.

Нажав соответствующую кнопку, мы переходим в меню экспорта данных.

Есть две опции экспорта – «быстрый» (по умолчанию) и «кастомный». Разница в том, что в первом случае мы экспортируем все таблицы, а в кастомном – можем выбрать таблицы и другие параметры экспорта данных. В 99% случаев настроек по умолчанию достаточно. Поэтому просто нажимаем кнопку «Export» и получаем файл с разрешением *.sql

Далее открываем PHPMyAdmin на новом хостинге и нажимаем на ссылку Import (что рядом со ссылкой Export)

выбираем файл *.sql, который мы экспортировали раньше, и нажимаем на кнопку «Import», которая находится в конце страницы.

Чтобы открыть админку и сайт по новому адресу, нужно в таблице базы данных «wp_options» заменить доменное имя новым. Чтобы открыть таблицу, нажимаем на «Browse»

необходимо заменить две ссылки — siteurl и home

для этого нажимаем на ссылку «Edit» с карандашом и открывается форма для редактирования таблицы

Заменяем на новый адрес и нажимаем «Go». Далее делаем тоже самое с «home».

После этих действий у нас будет открываться новый сайт и админка, но все картинки и файлы будут подтягиваться из старого домена. Вручную менять каждую ссылку достаточно тяжело. Можно или сделать SQL запрос и изменить все URL, а проще (безопаснее) будет использовать плагины для замены, например Better find and replace или Search & Replace.

Работают они аналогично — пишем что искать и на что заменять, выбираем таблицы где ищем и запускаем поиск с заменой. Если нужен тестовый запуск, оставляем галку «Dry Run», произойдет поиск без замены. Плагин достаточно неплохой и с помощью него можно менять не только ссылки, а любые слова или компибнацию слов — например, название бренда, если он поменялся и не нужно менять название на каждой странице отдельно.

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

Очень много действий, как по мне, поэтому лучше все сделать с помощью одного плагина.

2. Перенос сайта с помощью плагина Duplicator

Есть несколько плагинов, но хочу прежде всего отметить плагин Duplicator – Backups & Migration Plugin – Cloud Backups, Scheduled Backups, & More. Плагин очень классный и простой, ни разу не было никаких проблем. Можно делать перенос либо всего сайта, либо только в базе данных. Устанавливаем плагин и переходим в соответствующий раздел.

Для начала создания копии нажимаем Create New — создаем архив с установочным файлом.

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

Если нужно сделать бекап только базы данных, то нажимаем на вкладку Backup и выбираем «database only».

Когда это необходимо:

  1. Бесплатная версия duplicator имеет ограничения по размеру сайта, поэтому если сайт очень большой, лучше сделать бекап дубликтором только базы данных, а все файлы запаковать в архив и распаковать уже не сервере
  2. Возникает ошибка при создании бекапа через дубликатор — обычно это ограничение сервера на выполнение скриптов

Следующий шаг — сканирование сайта, где будет отмечено все ли хорошо. Как видим, на скриншоте у нас каждый пункт зеленый «Good». Нажимаем «Build».

Если все хорошо, то мы увидим страницу как на скриншоте. Мы можем загрузить архив и файл installer.php, как отдельно, так и нажав на кнопку чтобы загрузить их в «один клик». Кроме того, там будет еще инструкция по установке.

Следующий шаг – разместить архив и installer.php на сервере и запустить installer.php. Например, если адрес нашего сайта новый https://burki.shop, то нам нужно запускать файл для установки https://burki.shop/ installer.php

После запуска оно может нас попросить указать название архива (это как часть защиты).

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

далее ставим галку, что согласны с условиями и нажимаем «Next»

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

На этом все. Мы получили полную копию сайта без замены вручную ссылок на файлы и страницы.

Вас также может заинтересовать