Сервисный центр по ремонту садовой, строительной и уборочной техники потерял свой сайт на 1С-Битрикс: ни хостинга, ни резервной копии не осталось. Единственным источником были снимки страниц в веб-архиве — а там часть картинок не сохранилась, часть страниц отдаётся с ошибками, а некоторых нет вовсе.
Задача — вернуть сайт в рабочем виде, с прежней структурой разделов, текстами, прайсами и формой заявки, и перевести на WordPress, чтобы заказчик сам мог его обновлять.
Написал на Python инструменты, которые выгрузили сайт из веб-архива: по индексу архива для каждого адреса брался самый свежий удачный снимок в исходном виде, без панели архива. Отдельно добрал то, что не взялось с первого раза: снимки, которые числятся рабочими, но отдают ошибку, и файлы, сжатые архивом. Итог — 202 файла и все 71 страница сайта, сверка подтвердила, что ничего не потерялось.
Из сохранённых страниц извлёк содержимое — заголовки, тексты, картинки, — а шапку, меню и подвал отбросил, их делает тема. Собрал файл импорта WordPress, где иерархия разделов восстанавливается по адресам страниц, а картинки остаются по старым путям, поэтому ссылки внутри текстов работают без переписывания.
Сделал тему WordPress, повторяющую прежний дизайн: шапка с телефонами и кнопкой заявки, меню, слайдер, плитка преимуществ и услуг. Раздел «Услуги» в архиве сохранился без картинок — собрал его заново той же плиткой, что на главной. Две пропавшие страницы восстановил по страницам-близнецам из соседних разделов. Перенёс форму заявки на ремонт.
Перед заливкой на хостинг заказчика проверял всё на локальном стенде в Docker (WordPress + MariaDB).
Сайт снова работает на remzzzona.ru: главная, девять разделов услуг с подразделами, прайсы на ремонт и прокат, отзывы, реквизиты, новости и статьи, доставка, контакты и форма заявки — в том же виде, что был у клиентов раньше. Адреса страниц остались прежними, поэтому старые ссылки на сайт продолжают работать, а содержимое правится в админке WordPress без программиста.