2.14.1.8. Зміна адреси сайту в WordPress

Увага!

Перед виконанням будь-яких дій обов’язково створіть резервну копію файлів сайту та його бази даних, щоб мати можливість повернути сайт у вихідний стан, якщо раптом щось піде не так.

Важливі моменти:

  • Якщо стара або нова адреса містить символи національного алфавіту (наприклад, кириличні), її потрібно перетворити в панікод за допомогою конвертера.
  • Встановлений в налаштуваннях сайту редирект на HTTP/HTTPS повинен відповідати протоколу в новій адресі. Наприклад, якщо до сайту підключений сертифікат і в налаштуваннях сайту встановлений редирект на HTTPS, то нова адреса має починатися з https://. У разі невідповідності протоколу на сайті може виникати циклічний редирект між протоколами http:// та https://.
  • Встановлений в налаштуваннях сайту редирект на адресу з www або без www повинен відповідати новій адресі. Наприклад, якщо в налаштуваннях сайту встановлений редирект на адресу з www, то нова адреса також повинна бути з www. У разі невідповідності протоколу на сайті може виникати циклічний редирект між адресою з www і без www.

У статті описані різні способи зміни адреси сайту всередині WordPress. Для перейменування сайту в розділі «Мої сайти» використовуйте інструкцію.

  1. В розділі «Мої сайти» в меню сайту натисніть «Встановлення CMS».
  2. Натисніть «Змінити адресу».
  3. Введіть нову адресу сайту та натисніть «Змінити адресу сайту».

Система бере з конфігураційного файлу сайту назву бази даних, що використовується, і змінює в ній стару адресу на нову.

Увага!

Якщо назви таблиць у базі даних замість стандартного wp_ починаються з іншого префікса, змініть префікс у SQL-запитах.
  1. У файлі конфігурації сайту подивіться назву бази даних, до якої він підключений.
  2. Відкрийте базу даних в phpMyAdmin.
  3. Виконайте наступні три SQL-запити:
    UPDATE wp_options SET option_value = REPLACE(option_value, 'http://old-address.com', 'http://new-address.com') WHERE option_name = 'home' OR option_name = 'siteurl';
    UPDATE wp_posts SET guid = REPLACE(guid, 'http://old-address.com','http://new-address.com');
    UPDATE wp_posts SET post_content = REPLACE(post_content, 'http://old-address.com', 'http://new-address.com');
  4. Для зміни адреси сайту в метаданих слід додатково виконати ще один запит:
    UPDATE wp_postmeta SET meta_value = REPLACE (meta_value, 'http://old-address.com','http://new-address.com');
  5. Якщо на сайті використовуються коментарі слід додатково виконати ще два запити:
    UPDATE wp_comments SET comment_content = REPLACE (comment_content, 'http://old-address.com', 'http://new-address.com');
    UPDATE wp_comments SET comment_author_url = REPLACE (comment_author_url, 'http://old-address.com', 'http://new-address.com');
  6. Перевірте роботу сайту за новою адресою.
  1. Відкрийте адмін-панель WordPress.
  2. Перейдіть в розділ «Налаштування → Загальні».
  3. Вкажіть нову адресу в полях «Адреса WordPress (URL)» та «Адреса сайту (URL)». Адреса обов’язково повинна починатися з протоколу http:// або https:// і в її кінці не повинно бути слеша /. Приклад правильної адреси: http://example.com.
  4. Натисніть «Зберегти зміни».
  5. Перевірте роботу сайту за новою адресою.

Увага!

Спосіб слід застосовувати з обережністю, якщо база даних, до якої під'єднано сайт, використовується одночасно кількома сайтами.

Для зміни адреси WordPress можна використовувати спеціалізовану утиліту WP-CLI (доступна на хостингу за замовчуванням).

  1. Підключіться до хостингу по SSH.
  2. Перейдіть в кореневий каталог сайту, виконавши команду:
    cd ~/example.com/www

    У команді замість example.com/www вкажіть свої дані.

  3. Замініть адресу сайту в її базі даних, виконавши команду:
    wp search-replace 'old-address.com' 'new-address.com'

    У команді замість old-address.com вкажіть стару адресу сайту, замість new-address.com — нову.
    У результаті виконання команди відобразиться інформація про те, де і скільки було зроблено замін.

  4. Перевірте роботу сайту за новою адресою.

Налаштувати пошук з заміною більш тонко (наприклад, тільки за певними таблицями або стовпцями) можна за допомогою додаткових атрибутів, описаних в документації.

Зміст