Как изменить адрес сайта WordPress
Плагины Уроки для новичков

Как изменить адрес сайта WordPress

Pinterest LinkedIn Tumblr

Как изменить адрес сайта (URL) на WordPress в базе данных при переносе на другой домен – очень важный вопрос при смене домена. Нужно правильно обновить URL в базе данных, чтобы страницы, медиафайлы оставались доступны для пользователей. В статье мы воспользуемся плагином Better Search Replace и SQL запросами в базе данных WordPress.

В базе данных WordPress используется абсолютный (полный) URL. Это является проблемой, когда вы переносите сайт на новый домен, либо подключается SSL сертификат, потому что при переходе по ссылкам, будет открываться старая или небезопасная (http) версия сайта.

Чтобы исправить это, мы рассмотрим 4 варианта решения проблемы:

  • Изменение адреса в админке сайта
  • Использовать плагин
  • Использование SQL запроса
  • Использовать командную строку

Когда стоит использовать эту инструкцию:

  • При переезде на другое доменное имя
  • При добавлении SSL сертификата
  • При массовой замене URL

Инструкция в данной статье подойдет как для новичков, так и для профессионалов.

Изменение адреса сайта WordPress в панеле адинистратора (админке)

Чтобы изменить адрес сайта WordPress в админке сайта зайдите в админ панель сайта под логином администратора. Далее зайдите во вкладку Настройки -> Общие.

Как изменить адрес сайта WordPress - izmenenie adresa saita v adminke wordpress

Данный способ подойдет только в том случае, если Вы хотите изменить адрес сайта на https, так как при переносе сайта на другой домен попасть в админ панель вряд-ли получится. Обычно происходит редирект на старый домен. Для правки этих полей при переносе сайта на новый домен придется воспользоваться SQL запросом или ручной правкой адреса сайта в таблице базы данных wp_options.

Как изменить адрес сайта WordPress - wp options saita na wordpress 1024x835

Изменить адреса сайта с помощью плагина WordPress

3 плагина, которые помогут произвести замену:

В этой инструкции мы будем использовать плагин “Better Search Replace“, так как он показался нам самым лучшим.

В примере мы покажем, как заменить “http://example.com” на “https://example.com/blog”. Заметьте, что мы также меняем протокол с http на https.

Если вы делаете установку SSL сертификата, то в полях замены указывайте замену “http://example.com” на “https://example.com”.

  1. Сначала сделайте  резервную копию вашей базы данных . Если что-то пойдет не так, вы всегда легко сможете восстановить данные.
  2. Загрузите плагин Better Search Replace. На вашей панели перейдите к «Плагины > Добавить новый». Не забудьте прочесть инструкцию, как устанавливать плагины.

    Как изменить адрес сайта WordPress - better search replace
  3. Кликните на “Установить”, после этого “Активировать”.
  4. Настройки Better Search Replace находятся в Инструментах

    Как изменить адрес сайта WordPress - better search replace 2
  5. Так выглядит окно Замены/Поиска

    Как изменить адрес сайта WordPress - better search replace 3
  6. В поле “Искать” введите старый адрес сайта, в поле “Заменить на” адрес нового домена, на который будет заменяться старый URL.

    Если вы хотите перевести сайт на https, то следует менять “http://example.com” на “https://example.com”.

    Если вы ввели в поле поиска URL без слэша “\” в конце, то заменяйте этот URL также без слэша на конце. В противном случае могут появится проблемы с ссылками и исправить это можно будет только путем восстановления базы данных.
  7. Выберите таблицы, в которых будет производиться поиск и замена. Выбор нескольких таблиц реализован с помощью Ctrl+Клик для Windows или Cmd+Клик для Mac.
  8. Вы наверное захотите отметить пункт “Замена GUID”. Мы строго не рекомендуем это делать на взрослых сайтах. Более подробно о GUID можно прочесть в официальной документации WordpPress – https://wordpress.org/support/article/changing-the-site-url/#important-guid-note
  9. Холостой запуск используется для теста. После запуска отобразится количество проверенных таблиц, сколько ячеек для замены было найдено. Также есть возможность посмотреть, в каких именно таблицах будет замена.
  10. Уберите галочку с пункта “Холостой запуск” и нажмите “Запустить Поиск/Замену”, чтобы плагин смог заменить строки в базе данных.
  11. На этом шаге плагин изменил адрес старого домена на новый.

Как изменить адрес сайта WordPress с помощью SQL запросов в phpMyAdmin

В большинстве случаев для администрирования базы данных WordPress используется phpMyAdmin. С помощью SQL запросов мы можем изменить домен сайта на новый, а также делать другие правки в контенте сайта. Данные запросы можно будет использовать и для других массовых замен контента на сайте.

Перед началом любыми изменениями в базе данных строго рекомендуется сделать резервную копию и после каждого выполнения запросов проверять работоспособность сайта!

В данных примерах старый домен – dev.wptuts.ru, новый домен – wptuts.ru. У каждой таблицы базы данных есть префикс. По умолчанию он – wp_. Префикс таблиц устанавливается при первоначальной настройке WordPress. Если префикс у таблиц был изменен, то вам потребуется также изменить его в запросах. К примеру у Вас может быть таблица не wp_options, а wptuts13_options.

Ниже представлено 4 SQL запроса для изменения домена сайта WordPress.

UPDATE wp_options SET option_value = REPLACE(option_value, 'dev.wptuts.ru', 'wptuts.ru') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET post_content = REPLACE (post_content, 'dev.wptuts.ru', 'wptuts.ru');
UPDATE wp_posts SET guid = REPLACE (guid, 'dev.wptuts.ru', 'wptuts.ru');
UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'dev.wptuts.ru', 'wptuts.ru');

Для выполнения данных запросов нужно зайти в phpMyAdmin вашего сайта.

Как изменить адрес сайта WordPress - phpmyadmin wordpress 1024x543
Так выглядит phpMyAdmin у только что созданного WordPress сайта

Зайдите во вкладку SQL и вставьте туда SQL запросы для изменения домена WordPress.

Как изменить адрес сайта WordPress - vypolnenie sql zaprosa k baze dannyh wordpress 1024x406
Выполнение SQL запроса к базе данных WordPress

При нажатии кнопки “Вперед” в таблицах wp_option, wp_posts, wp_postmeta упоминание старого домена будет заменено на новый домен. Если вы также делаете перенос сайта на https (SSL), то перед старым адресом сайта вставьте http://, а перед новым https://.

SQL запросы при смене домена и переносе сайта на https (SSL)

UPDATE wp_options SET option_value = REPLACE(option_value, 'http://dev.wptuts.ru', 'https://wptuts.ru') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET post_content = REPLACE (post_content, 'http://dev.wptuts.ru', 'https://wptuts.ru');
UPDATE wp_posts SET guid = REPLACE (guid, 'http://dev.wptuts.ru', 'https://wptuts.ru');
UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'http://dev.wptuts.ru', 'https://wptuts.ru');

Использование командной строки для изменения домена сайта

Если вы знакомы с командной строкой, вы можете выполнить следующую команду и получить тот же эффект (при условии, что вы сохранили старый адрес WordPress).

  • Войдите на свой сервер через SSH.
  • Далее перейдите к вашей установке WordPress. Предполагая, что WordPress установлен в корень домена, выполните следующее:

    [server]$ cd ~/example.com
  • В каталоге вашего сайта вы можете использовать wp-cli для обновления URL-адресов с помощью следующей команды

    [server]$ wp search-replace http://example.com https://example.com/blog --dry-run

“–dry-run” в конце – это холостой запуск, если всё прошло удачно, то выполните команду без “–dry-run”.

Заключительный этап

После обновления URL сайта рекомендуем удалить кеш, если вы используете плагины для кеширования сайта.

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

2 комментария

    • Николай Дмитриев Ответить

      По опыту скажу, что данные SQL запросы безопасны и испытаны на десятках сайтов. Использование SQL может показаться сложным для новичков, но без этого не обойтись. При переносе нужно править адрес сайта в таблице wp_options, чтобы попасть в админку и установить плагин Better Search Replace для уже более безопасной замены домена. Better Search Replace по сути формирует SQL запросы и производит замену.

Написать комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте как обрабатываются ваши данные комментариев.