Зачастую возникает необходимость перенести сайт на WordPress с одного домена на другой.
Рассмотрим несколько вариантов переноса сайта на другой домен.
ВАЖНО: перед началом любых манипуляций с сайтом необходимо создать копию вашего сайта и копию базы данных сайта !!! И «уложить» их в безопасное место, чтобы в случае чего сделать откат к работающей версии. Теперь сделайте копию сохраненного и уже с ней работайте. Первую не трогайте, пока что-нибудь не сломаете 😉😁
* Нужна более подробная информация как сделать бекап и как откатить? Пишите в комментах, подробно распишем в следующих постах.
Перенос сайта на WordPress на другой домен на одном хостинге
Предположим, что в рамках вашего хостинга вы можете разместить несколько сайтов и вам нужно просто перенести сайт с одного домена на другой. Файлы сайта и оба домена находятся на одном хостинге. База данных при этом остается прежней.
1 способ:
- Выполняем обязательный пункт Бекап ⏫ .
- Переносим файлы сайта из папки старого домена в папку нового домена.
- Открываем копию базы данных в текстовом редакторе. Для Windows оптимально Notepad ++, MACоводам рекомендую TextMate.
- Выполните поиск и замените все вхождения старого адреса сайта на новый адрес, например, http://domain.ru заменить на http://newdomain.ru. Обязательно сохраните изменения.
- Загрузите измененную базу данных, предварительно очистив все таблицы старой версии на сервере.
- ✅ Готово. Проверьте. Все файлы со старого домена можете удалить, но не забудьте сделать переадресацию redirect 301 (в конце статьи), чтобы сохранить трафик со старого сайта и остальные показатели.
2 способ:
- Бекапим файлы сайта и базы данных.
- Заходим в phpMyAdmin и выбираем нашу базу данных.
- Нажимаем на вкладку «SQL» и поочередно выполняем 3 запроса, заменив http://olddomain.ru и http://newdomain.ru соответственно на старый и новый адреса сайта (обратите внимание, что в конце адреса не должно быть слеша → / ):
⤵
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');
4. ✅ Готово. Сайт работает на новом домене.
Перенос сайта на WordPress на другой домен на другой хостинг
Перенос сайта на другой домен на другой хостинг займет немного больше времени в зависимости от предустановленных настроек вашего хостинг-провайдера. Ничего сложного, просто следуйте инструкциям. Предполагается, что новый домен на новом хостинге уже припаркован.
- Создайте резервную копию файлов сайта и базы данных вашего сайта на старом хостинге и сохраните их на компьютер. (Совет: для начала создайте архив, а затем скачивайте. Так вы уменьшите риск потери данных при скачивании.)
- На новом хостинге создайте новую базу данных. Запишите название новой базы данных и пароль от нее, они нам еще понадобятся.
- Теперь нам надо закачать в новую базу данных информацию из старой базы. Рекомендую вначале заменить старый домен на новый в текстовом редакторе, если вы этого не сделаете сейчас, то это все равно нужно будет сделать, но уже через phpMyAdmin.
- В админ-панели нового хостинга перейдите на вкладку Импорт (Import). Закачайте дамп базы данных с разрешением .sql и нажмите ОК (Вперед/Go и тд).
- Если Вы не заменили имя домена перед тем, как закачать базу данных на новый хостинг, сделайте это сейчас, применив СПОСОБ 2 ⏫
- Переходим к файлам сайта. Распаковываем на компьютере наш архив, в корне сайта находим файл wp-config.php и открываем его в тектстовом редакторе (для Windows оптимально Notepad ++, MACоводам рекомендую TextMate или стандартный TextEdit)
- Нам необходимо заменить данные для подключения к новой базе данных. Заменяем следующие строки:
/** Имя базы данных для WordPress */
define(‘DB_NAME‘, ‘имя_вашей_базы_данных‘);
/** MySQL имя пользователя */
define(‘DB_USER‘, ‘имя_пользователя_базы_данных‘);
/** MySQL пароль базы данных */
define(‘DB_PASSWORD‘, ‘пароль_к_базе_данных‘);
на соответствующие значения.
- ‘имя_вашей_базы_данных’ — пишем название новой базы данных из пункта 2
- ‘имя_пользователя_базы_данных’ — имя пользователя, имеющего права подключения к новой базе данных
- ‘пароль_к_базе_данных’ — — вносим значение пароля
8. Сохраняем изменения и вновь создаем архив всех файлов сайта с обновленным wp-config.php (Совет: рекомендую перед созданием архива пройтись по всем файлам на наличие в них старого домена и заменить значения на новый домен. Notepad ++ позволяет поиск сразу по всем файлам. MACоводам можно просто открыть корневую папку сайта в Finder и в поле поиска ввести старый домен, ограничив область поиска данной папкой.)
9. Закачиваем архив в корневую папку нового домена, распаковываем.
10. ✅ Готово. Проверяем. (Если возникнут ошибки, пишите в комментариях, будем разбирать.)
Создание 301 редиректа со старого домена на новый
Для чего нужно создавать редирект 301? Для того, чтобы при обращении к любой странице сайта по старому адресу посетитель автоматически перенаправлялся на ту же самую страницу, но уже на новом домене.
Для этого необходимо заменить содержимое файла .htaccess, находящегося в корне старого домена, на следующее (вместо newdomain.ru указывается новый домен):
<FilesMatch «robots.txt$»>
RewriteEngine off
Options +FollowSymLinks
RewriteEngine on
RewriteRule (.*) http://newdomain.ru/$1 [R=301,L]
Вы можете просто удалить все файлы из папки старого домена и оставить/создать только один файл .htaccess с этим содержимым. Если вы в принципе не планируете оставлять старый домен, хостинг и все папки, пишите в комментах, напишу отдельный пост.
Не забудьте после всех манипуляций в файле robots.txt на новом сайте указать директиву Host ⏬ и установить и настроить плагин Google XML Sitemaps.
И, напоследок пряник 🍪:
Правильный robots.txt для WordPress
Некогда объяснять, я спою 😎. Хотите узнать, почему именно так правильно в большинстве случаев? Задавайте вопросы в комментариях, сделаю отдельный пост.
User-agent: *
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /trackback
Disallow: */trackback
Disallow: */*/trackback
Disallow: */*/feed/*/
Disallow: /*?*User-agent: Yandex
Disallow: /wp-admin
Disallow: /wp-includes
Disallow: /wp-content/plugins
Disallow: /wp-content/cache
Disallow: /wp-content/themes
Disallow: /trackback
Disallow: */trackback
Disallow: */*/trackback
Disallow: */*/feed/*/
Disallow: /*?*Host: вашсайт.ru
Sitemap: http://вашсайт.ru/sitemap.xmlUser-agent: Googlebot-Image
Allow: /wp-content/uploads/User-agent: YandexImages
Allow: /wp-content/uploads/
Остались вопросы? Хотите видео-инструкцию к посту? Не стесняемся — делимся в соц.сетях и задаем вопросы в комментариях. Увижу активность, буду стараться писать для вас информативные посты и записывать инструкции. Благодарю за внимание!
Тут поделиться:
А тут с нами подружиться:
Больше постов по тегам ⏬ ⏬ ⏬