Как-то в пятницу возникла необходимость переноса домена и сайта от одного владельца, регистратора и хостинга, к другому. Сайт на CMS Wordpress, самой популярной системе, но на старой версии «движка» (2.9.2), устаревшей версии РНР (5.4) и базы данных (4 версия MySQL, без i).
Бывшим владельцем была предоставлена резервная копия каталога сайта (.zip), базы данных (в формате .sql), также был совершен импорт сайта в административной панели управления сайтом (.xml). Домен остался у старого регистратора, чтобы сайт работал, в параметрах домена были пописаны dns сервера нового хостинга.
На новом хостинге была создана папка для файтов сайта, был произведен импорт таблиц старой бд в новую чистую базу и ничего, конечно, не заработало, хотя и РНР удалось настроить на нужную версию, и таблицы БД импортировать в режиме совместимости. После суток манипуляций и борьбы с ошибками было решено пойти другим путем.
На новом хостинге был поднят новый сайт (версии WP 6.4.1, PHP 7.4, MySQLi 8) и автоматически установлена CMS Wordpress из панели управления хостингом. Далее (сайт останавливается на время работ по копированию) в папку нового сайта были перенесены через FTP (клиент FTP Mozilla) в папку Wp-content полностью папка с шаблоном старого сайта и папкой Uploads (файлы и картинки старого сайта). Далее через phpMyAdmin была импортирована старая бд в новую базу данных. Для того, чтобы новый сайт обращался к старым таблицам со старыми данными, старые таблицы вручную выбирались и переименовывались в соответствии с префиксами таблиц новой БД (допустим старые таблицы имеют префикс WP, а новые CMS_WP). Перед переносом, чтобы не потерять работоспособность, новые таблицы переименовываются путем подставления в начало названия например приставки«old_» чтобы в случае конфликта вернуть таблицу обратным переименованием. Так выяснилось, что таблицы «wp_option» и «wp_user_metaname» лучше не подключать, поскольку в них записаны старые, несовместимые с новой версией характеристика сайта.
Всего там шесть или семь таблиц, так что все прошло довольно быстро. После этого, в рабочей (административной) панели сайта находим в инструментах опцию «экспорт» и экспортируем старый файл .xml. А также подключаем старый шаблон сайта. Метаданные пользователей пришлось копировать со старого сайта вручную, поскольку шаблон старого сайта был изменен для вывода этих самых метаданных на страницу «авторы» с фотографиями авторов. Да, старые плагины не работают в новой версии, и, при импорте и создании резервных копий сайта надо отключить все плагины. Кроме этого, вручную пришлось убирать из index.php и singl.php в папке шаблона сайта строки, относящиеся к системе обмена ссылками sape.php и плагину вывода метаданных авторов, а также закомментировать пару строк ошибок в рнр файлах шаблона, которые вели к несуществующим значениям (это разница в синтаксисе версий рнр).
Вчерне сайт заработал. Но, чтобы добиться прежнего вида (в основном вывода данных авторов с фотографиями), пришлось поискать плагины для такой работы и покопаться в настройках (во избежание дублирования вывода пришлось закомментировать часть старого кода). Также были установлены плагины для работы с почтой, форма обратной связи, классический редактор текстов, плагин для создания метаданных, яндекс-метрики и пр.
Никакие изменения в файлы корневой директории сайта не вносились, поскольку только файлы контента старого сайта переносились на работающую версию нового сайта.
А, ну и установлен доступ по SSL, как без него, там стандартная процедура.
Сайт работает, все старые ссылки на него работают. Так что созданный 13 лет назад сайт был перенесен и реанимирован вполне удачно... теперь сам «движок» и плагины обновляются автоматически, безопасность сайта на уровне, в панели яндекс-вебмастера ошибок не обнаружено и в панели управления сайтом «здоровье» хорошее.