Перенесення сайту на WP движку деяким людям видається складним завданням. Поради в Кодексі, будучи, начебто, всеосяжними, описують занадто багато варіантів вирішення цього завдання, і ніде при цьому не дається простого алгоритму всього процесу цілком.
Коли мені вперше довелося переносити wordpress, я витратив кілька годин, розбираючись у всіх різних варіантах рішення цієї проблеми. У підсумку я сам написав інструкцію. якої користуюся і зараз.
Щоб заощадити ваш час, я опублікую тут покрокову інструкцію і розповім про трьох найбільш поширених ситуаціях:
- Перенесення сайту з поддомена в кореневій каталог (наприклад, в тому випадку, коли ви використовували піддомен для внесення змін в сайт, не зачіпаючи сам веб-сайт, який знаходиться в кореневому каталозі);
- Перенесення сайту з локалки на удалёнку;
- Перенесення сайту з одного домену або хостингу на інший.
Насамперед
Перед тим, як використовувати наведені нижче методи, зробіть резервну копію:
- файлів теми;
- завантажень;
- плагінів, якими ви користуєтеся, щоб потім не довелося знову витрачати час на їх скачування, якщо раптом щось піде не так;
- баз даних.
Ви можете забекапіть базу даних використовуючи один з цих інструментів:
- phpMyAdmin;
- Sequel Pro для OS X;
- Terminal commands;
- десктоптний клієнт MySQL;
- плагін для бекапа, наприклад, WP-DB-Backup, який відправить вам копію вашої бази даних на імейл або завантажить на ваш ПК.
У цій статті я розповім, як забекапіть базу даних, використовуючи phpMyAdmin. так як він надається майже всіма хостерами і має відносно простий у використанні інтерфейс.
Перенесення сайту з поддомена в кореневій каталог
Це, безумовно, самий простий з трьох переносів, про які я збираюся розповісти, тому що на самій-то справі вам нічого переносити і не потрібно - або майже нічого. Цей метод підійде для стандартної установки WP і для більшості фреймворков, або якщо ви використовуєте батьківську або дочірню структуру теми.
Увага! Цей метод не підійде для:
Саме чудове в цьому методі те, що він займе у вас всього 3-10 хвилин в залежності від ваших налаштувань.
1. Видаліть існуючий сайт
Якщо сайт знаходиться в кореневому каталозі, видаліть його. Це може бути інший WP або звичайний сайт.
Якщо це сайт WP, забекапьте його як описано вище, а потім видаліть все WP файли в корені.
- Якщо у вас є доступ до Softaculous або іншому подібного сервісу установки програм через панель управління хостингом, використовуйте її для видалення WP.
- Якщо ж немає, використовуйте phpMyAdmin, щоб видалити базу даних існуючого сайту. У наступному розділі я детально розповім, як це зробити.
- Після видалення бази даних видаліть всі WP файли. Зазвичай це все папки і файли, що починаються з wp-.
- Увага! не видаляйте сайт, що не зробивши його резервну копію!
2. Вимкніть постійні посилання
Вимкніть ЧПУ в розділі «Постійні посилання», який знайдете в розділі «Налаштування». Виберіть опцію «за замовчуванням» і збережіть зміни.
Збережіть все, натиснувши на кнопку «Зберегти зміни» і переходите до наступного пункту.
4. Скопіюйте та відредагуйте два файли
Використовуючи FTP / SFTP або файловий менеджер cPanel, скопіюйте (не переміщуйте) з каталогу WP в кореневій каталог наступні файли:
- index.php
- .htaccess, якщо такий є. Якщо файлу .htaccess немає (а відключення постійних посилань повинно привести до того, що у вас його не буде), не хвилюйтеся.
Відредагуйте файл index.php, який ви перемістили. Це можна зробити наступним чином:
- редагувати його в тому місці, куди перемістили, використовуючи FTP / SFTP або файловий менеджер cPanel;
- завантажити його з підкаталогу, відредагувати і потім завантажити його в кореневий каталог замість того, щоб створювати копію.
Зміни, які вам потрібно внести, дуже прості і стосуються тільки одного рядка в кінці файлу. Вам просто потрібно змінити наступний рядок:
Тому якщо ви працювали з example.com/development, просто замініть рядок на:
Збережіть новий файл index.php.
5. Увімкніть постійні посилання і перевірте
Поверніться в адмінку WP, включите постійні посилання і налаштуйте сайт так, як вам потрібно.
Завантаження WP сайту з локалки на удалёнку
Це один з найбільш часто зустрічаються переносів WP сайтів. Якщо ви працюєте над розвитком сайту локально і вам потрібно його запустити або просто показати клієнту або одному з ваших розробників, вам потрібно буде завантажити WP сайт на сервер. Цей процес складніше, ніж перенесення сайту з підкаталогу в кореневій каталог, і складається він з трьох компонентів:
1. Вимкніть постійні посилання
Вимкніть постійні посилання в вікні «Постійні посилання», яке ви знайдете в меню «Налаштування». Виберіть варіант «За замовчуванням» і натисніть кнопку «Зберегти зміни».
2. Забекапьте базу даних
3. Встановіть WorldPress на сервері і завантажуйте контент
Будь-яким зручним способом встановіть WP на сервер, на якому хочете розмістити сайт.
Використовуючи FTP або SFTP, копіювання файлів з вашої локальної папки «wp-content» в віддалену папку «wp-content», використовуючи таку ж систему папок як і у вашій локальній установці.
Можете сходити зробити собі чашечку кави, так як потрібно якийсь час, щоб завантажити ці папки.
4. Відредагуйте базу даних
Використання команди «замінити» прискорить цей процес - копій може бути тисячі. Збережіть вашу нову базу даних.
5. Видаліть існуючу базу даних на сервері
Примітка. Цей крок потрібно виконувати тільки в тому випадку, якщо ви для установки WP використовуєте скрипти типу Softaculous або Fantastico, так як вони автоматично створюють нову базу даних. Якщо ж ви встановили WP вручну, то цей пункт можна пропустити.
У phpMyAdmin видаліть базу даних, яка була встановлена на віддаленому сайті, коли ви встановили WP:
- Виберіть ту базу даних, з якої ви працюєте
- Перейдіть у вкладку «Структура»
- Під списком таблиць натисніть на кнопку «Перевірити все»
- У випадаючому меню, в якому написано «Застосувати до вибраного», натисніть «Видалити»:
- Ви побачите повідомлення, повторно питаю, чи точно видаляти всі таблиці. Тисніть «Так».
- Нарешті ви побачите повідомлення про те, що ваш запит виконаний:
6. Завантажте нову базу даних
Не виходячи з phpMyAdmin, завантажте базу даних, яку ви відредагували:
- Клацніть по вкладці «Імпорт»
- Натисніть кнопку «Вибрати файл»
- Виберіть базу даних, яку ви зберегли в 4 пункті, натисніть «Вибрати» або «Ок»
- Через якийсь час (все залежить від розміру вашої бази даних), ви побачите повідомлення про те, що завантаження було успішно завершена:
7. Очистіть кеш браузера
Це дозволить уникнути проблем, які можуть виникнути, якщо в кеші залишиться контент зі старої версії бази даних.
8. Увійдіть в адмінку WP і обновіть постійні посилання
Ваші дані для входу не зміняться і будуть такими ж як і для локального сайту. Якщо ж ви вказали інші логін і пароль при віддаленій установці, вони все одно заміняться даними з імпортованої бази даних.
Зайдіть в «Постійні посилання» і знову їх включите.
Перенесення WP сайту з хостингу на хостинг
Цей процес майже такий же, як і при завантаженні сайту з локалки на удалёнку. Єдина відмінність в тому, що вам необхідно завантажувати файли і базу даних з чинного сайту.
Проробіть весь описаний вище процес, внісши такі зміни у 2 пункт:
2. Скачайте і забекапьте стару базу даних і файли.
У phpMyAdmin старого сайту виберіть потрібну базу даних і натисніть на вкладку «Експорт». Скачайте базу даних, натиснувши на кнопку «Ок». База даних скочується на ваш комп'ютер.
Перемістіть базу даних з папки завантажень в робочу папку і створіть її копію. З цією копією бази даних ви будете виконувати дії 4 пункту.
Використовуючи FTP або SFTP, скачайте вміст папки wp-content вашого старого сайту. Вам потрібно буде завантажити це в новий сайт в 3 пункті.
Тепер повертайтеся до вихідного процесу.
Процес перенесення WP не повинен викликати зарудненій. Якщо всі пункти будуть виконані вірно і в правильній послідовності, то ваші дані будуть у безпеці і сайт запрацює у своїй новій локації. Важливо пам'ятати наступне:
- Завжди створюйте резервну копію сайту перед початком роботи.
- Якщо ви переносите сайт WP всередині домену, вам не потрібно буде переносити все, просто внести деякі зміни в налаштування і перенести і відредагувати файл index.php.
- Переміщаючи базу даних в нове місце, переконайтеся, що ви завантажуєте ту версію, в якій ви прописали новий урл, а не резервну копію зі старим урлом. Інакше, саме незначне, що може трапитися - це ваші внутрішні посилання стануть битими і, можливо, ви побачите білий екран смерті, коли спробуєте встановити сайт.
Якщо ви допустите помилку на будь-якому з етапів, скасуйте цю дію і почніть все етапи роботи з резервною копією. Адже ви зробили резервну копію, чи не так? =)
Кодекс WP включає в себе інформацію, яка допоможе вам застосувати цей метод незалежно від установок вашого хостингу:
Для допомоги в роботі з phpMyAdmin, загляньте в документацію phpMyAdmin.
Існують також і плагіни, які допоможуть вам перенести WP, якщо ви не хочете робити це вручну. Я сам все їх не перевіряв, тому не можу ручатися за надійність і простоту їх використання. А якщо ви вирішили якимось з цих плагінів скористатися, то робіть це обережно.