Перенос WordPress сайта на другой домен без плагинов

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

На самом деле, ручной перенос сайта ничем не сложнее простого переноса сайта с помощью плагинов. В некоторых моментах так даже проще).

Для ручного переноса сайта на нашем движке нам понадобится всего лишь:

  1. Доступ к папке с файлами WordPress;
  2. Доступ к базе данных, например PHPmyadmin. Он присутствует на большинстве хостингов и в панелях управления VDS.

Статей по переносу сайтов на другие домены в интернете море. Я скорее пишу эту статью как заметку для себя, но может она кому-то ещё пригодится, ибо данный способ самый быстрый и эффективный.

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

  1. Деактивируем плагины сайта на старом домене, во избежание конфликтов;
  2. Копируем файлы WordPress со старого местоположения;
  3. Экспортируем старую DB;
  4. Простым копированием переносим старые файлы WordPress на новый хостинг и домен;
  5. На новом месте создаём базу и импортируем в неё данные с прошлой базы. Меняем две строки в базе wp_options, подставляя актуальный URL сайта с новым доменом;
  6. Заменяем пару строк в файле wp-config, подключая его к новой базе данных на новом месте.
  7. Переписываем URL адреса вручную, либо с помощью бесплатного плагина.
  8. Profit!

Для тех же, кто не понимает, что тут происходит, более подробный процесс переноса:

Действия на старом адресе при переносе сайта на WordPress

Краткий порядок действий таков:

  1. Создание копии файлов вашего сайта на WordPress;
  2. Экспорт базы данных.

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

Внимание! Я показываю на примере Timeweb, но по факту на каждом хостинге вам доступны точно такие же функции админ-панели. Просто они выглядят по-разному, но назначение одинаково. Я просто люблю Timeweb и всем рекомендую пользоваться именно их услугами. О том, почему я так его люблю, можно почитать в статье Шаг №2 Выбор хостинга для размещения сайта. В моём случае, главное преимущество timeweb - возможность расширения дискового пространства без покупки доп. тарифа.

Первым делом заходим в панель управления хостингом и скачиваем все файлы из текущей директории WordPress, можно в виде архива. На timeweb это пункты файловый менеджер - архиватор - запаковать и скачать.

Перенос WordPress сайта на другой домен без плагинов

Как итог - мы получаем .zip архив со всем содержимым нашего прошлого сайта.

Далее мы идём в базы данных и входим в админку phpmyadmin. Тут важно понимать, что phpmyadmin - всего лишь оболочка для управления БД, а потому в левой части страницы нужно будет выделить именно ту БД. которая отвечает за переносимый сайт.

Выбрав именно нужную нам БД нажимаем на "экспорт", жмём "вперёд" и получаем файл с дампом базы в формате sql.

Перенос WordPress сайта на другой домен без плагинов

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

Действия на новом хостинге и домене.

Первым делом, мы берем и закидываем папку с файлами нашего старого WordPress сайта на новое место, попутно разархивируем все файлы в рабочий каталог нового домена. На тестовой VDS тестовый каталог у меня находится по пути www/lescom.shadani.ru/

Все файлы на новое место мы скопировали, теперь нужно создать базу данных. Большинство хостинг-провайдеров не позволят вам создать БД с тем же именем, что и на прошлом месте. Потому, имя БД скорее всего у вас изменится. После создания БД нам нужно запомнить 3 вещи, её имя, имя её админа и пароль. Перенос WordPress с включённой функцией мультисайта немного отличается (тык).

Создали БД? Отлично! Первым делом нам нужно отредактировать файл wp-config в нашей новой папке сайта. Все данные новой БД вписываем в нужные строки.

Перенос WordPress сайта на другой домен без плагинов

DB_NAME - имя нашей базы. DB_USER - имя пользователя базы, ну и DB_PASSWORD - его пароль. Окей, сохраняем и закрываем.

Теперь нам нужно импортировать в новую базу данные из старого дампа. Идём в phpmyadmin, авторизуемся под логином и пользователем, созданным ранее и прописанным в wp-config. Выбираем нашу базу прожимаем Импорт. Указываем файл с БД, который мы скачали с прошлого хостинга и жмякаем "Вперёд".

Следующее, что нам следует сделать - заменить старый URL, хранящийся в базе, на новый. Данная информация находится в wp_options, в строка siteurl и home.

Перенос WordPress сайта на другой домен без плагинов

На этом моменте сайте уже должен заработать. Вход в админку сайта производится по старым учётным данным. Единственное НО - на сайте остались старые ссылки, ведущие на прошлый домен. Их нужно переписать, но делать это вручную или через автозамену в БД не стоит.

Во избежание конфликтов рекомендуется так же удалить содержимое папки wp-content/cache/ , однако у меня ни разу не возникало проблем даже когда я забывал это сделать.

Замена старых ссылок на новые при переносе Worpress сайта

Для правильной замены старых ссылок на актуальные лучше всего положиться на плагины. Плагинов с данным функционалом куча, лично я уже привык к Velvet Blues Update URLs, тем более что он ни разу пока что не подводил.

После установки и активации Velvet Blues Update URLs в инструментах появится дополнительная функция - Update URLs.

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

Перенос WordPress сайта на другой домен без плагинов

Плагин радостно оповестит вас об успехе операции. Можно идти проверять - всё должно быть на своих местах, все старые ссылки перебиты на новые и сайт полностью функционирует, словно и не было никакого переноса =)

Если после обновления URL сайт потерял оформление и ругается на незащищённый протокол, значит в настройках WordPress на вкладке "Общие" нужно указать https.

Отличия в переносе мультисайта WordPress на новый домен

Разница в переносе WordPress с мультисайтами на другой домен не слишком то велика.

Во-первых, в файле Wp-config.php помимо ввода нового имени базы/пользователя/пароля, нужно так же внести изменения в строчку "define('DOMAIN_CURRENT_SITE', 'НОВЫЙДОМЕН');:

Перенос WordPress сайта на другой домен без плагинов

Во-вторых, заменять старый url на новый придётся в бОльшем количестве таблиц в вашей бд. В зависимости от количества сайтов в мультисети, у вас будет несколько таблиц wp_options, т.е. если у вас в мультисайте два сайта - будет wp_options и wp_2_options. Соответственно, заменить старый адрес на новый нужно в обеих таблицах.

Помимо wp_options новый адрес нужно там же прописать в таблице wp_blogs . Её нет в обычной версии Wp, она появляется только при включении мултисайтовости.

Похожие статьи:

Кастомизируем внешний вид входа в админку WordPress

Мультисайт на WordPress. Настройка, плюсы и минусы

Убираем/Изменяем слова "Метка" и "Рубрика" в WordPress