Перенос wordpress сайта на другой домен

Чтобы перенести сайт с сохранением всех настроек (сохранение настроек визуального редактора, страниц по умолчанию и т.д) потребуется провести несколько манипляций с базой данных.

  1. Сначала скопируйте файлы сайта в новое расположение (новый хостинг/домен)
  2. Сделайте дамп базы данных
  3. Залейте базу данных в новое расположение стандартными средствами импорта/экспорта phpMyAdmin
  4. В новой базе выполните запросы:
UPDATE wp_options SET option_value = REPLACE(option_value, 'http://olddomain.ru', 'http://newdomain.ru') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = REPLACE(guid, 'http://olddomain.ru','http://newdomain.ru');
UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://olddomain.ru', 'http://newdomain.ru');

Где olddomain.ru — прежнее название сайта, а newdomain.ru — новое название сайта.

Важно: если у вас кириллический домен, название домена в SQL-запросах необходимо вводить в формате Punycode. Для перевода кириллического домена в формат Punycode, воспользуйтесь конвертером. Например, вам необходимо перенести сайт на кириллический домен новыйдомен.ru. Название этого домена в формате Punycode выглядит так: xn--b1aedoqcfcd1k.ru. В таком случае, вам необходимо вводить SQL-запрос (на примере 2 запроса):

UPDATE wp_posts SET guid = REPLACE(guid, 'http://olddomain.ru','http://xn--b1aedoqcfcd1k.ru')