Как перенести WordPress на новый домен: тот самый третий пункт

Перенос WordPress-сайта на новый домен — задача, которая выглядит пугающей только до первого раза. На самом деле весь процесс сводится к четырём основным шагам:

  1. Перенести файлы сайта на новый сервер.
  2. Перенести базу данных на новый сервер.
  3. Заменить в базе данных адрес старого домена на новый.
  4. Прописать доступ к новой базе данных в файл конфигурации wp-config.php.

Казалось бы — всё просто и логично. Но именно третий пункт традиционно вызывает больше всего вопросов. Стоит спросить у ИИ-ассистента «как заменить домен в базе WordPress» — и получишь пять разных способов, три плагина, две противоречивые инструкции и один совет «сделать бэкап» (последнее, кстати, дельное).

Так вот — никакой магии. Всё делается тремя SQL-запросами. Без плагинов, без танцев с бубном, без платных инструментов.

Выполнить их можно в phpMyAdmin, через MySQL-консоль или любой другой SQL-клиент — на ваш вкус:

Запрос 1. Меняем главное — адрес сайта и домашнюю страницу в настройках WordPress:

UPDATE wp_options 
SET option_value = replace(option_value, 'https://old-domain.ru', 'https://new-domain.ru') 
WHERE option_name = 'home' OR option_name = 'siteurl';

Запрос 2. Обновляем GUID записей — уникальные идентификаторы каждого поста и страницы:

UPDATE wp_posts 
SET guid = replace(guid, 'https://old-domain.ru', 'https://new-domain.ru');

Запрос 3. Заменяем все упоминания старого домена внутри контента записей — ссылки, вставленные изображения, якоря:

UPDATE wp_posts 
SET post_content = replace(post_content, 'https://old-domain.ru', 'https://new-domain.ru');

Вот и всё. Домен заменён, сайт живёт на новом месте, а вы сэкономили час на изучение противоречивых инструкций из интернета.

⚠️ Важно: перед любыми манипуляциями с базой данных — делайте резервную копию. Это не паранойя, это гигиена.

Копи-френдли версия. Все три запроса:


UPDATE wp_options SET option_value = replace(option_value, 'https://old-domain.ru', 'https://new-domain.ru') WHERE option_name = 'home' OR option_name = 'siteurl';

UPDATE wp_posts SET guid = replace(guid, 'https://old-domain.ru', 'https://new-domain.ru');

UPDATE wp_posts SET post_content = replace(post_content, 'https://old-domain.ru', 'https://new-domain.ru');

Оставьте комментарий