Перенос WordPress блога
16 Янв 2010
Все блоггеры рано или поздно сталкиваются с переносом своего детища на новый хостинг, на новый домен. Так и мой блог в один прекрасный момент вылетел из гнезда родного localhost’a
. О том как безболезненно осуществить эту операцию я и расскажу.
Последовательность действий следующая:
- Копируем все файлы и папки WordPress (WP) на новый хостинг.
- Экспортируем на старом хостинге базу WP в файл, для этого запускаем phpMyAdmin, выбираем БД,

жмем на вкладку “Экспорт”,
ставим галку “Сохранить как файл”, отмечаем что хотим упаковать в zip
и жмем OK - Создаем на новом хостинге БД, заходим в нее и на вкладке “Импорт” выбираем zip-файл, который мы создали во 2-м шаге инструкции
и опять жмем OK. - Устанавливаем на новом хостинге в файле wp-config.php соответствующие значения констант DB_NAME , DB_USER, DB_PASSWORD
- Заменим старые URL в БД на новые, для этого в phpMyAdmin вкладке “SQL” выполним следующие запросы:
примечание: http://old-blog.com – url старого ,блога, http://new-blog.com – url нового блога
SET @old_url = "http://old-blog.com"; SET @new_url = "http://new-blog.com"; #Заменяется URL для опций home и siteurl: UPDATE wp_options SET option_value = REPLACE(option_value, @old_url, @new_url) WHERE option_name = 'home' OR option_name = 'siteurl'; #Заменяется вхождение URL в поле guid в таблице wp_posts: UPDATE wp_posts SET guid = REPLACE(guid, @old_url,@new_url); #Заменяется вхождение URL в поле post_content в таблице wp_posts: UPDATE wp_posts SET post_content = REPLACE(post_content, @old_url, @new_url); #а также заменим путь для загрузки файлов: UPDATE wp_options SET option_value = '/wp-content/uploads' WHERE option_name = 'upload_path';
- Если используются ЧПУ и изменился относительный путь, например, блог размещался на старом хостинге в корне, а на новом в подпапке myblog, то подправим .htaccess:
RewriteEngine On
RewriteBase /myblog/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /myblog/index.php [L] - Установим атрибуты 777 для директории wp-content/uploads, разрешая туда запись.



