Как перенести сайт с Webflow на кастомную разработку
Пошаговый разбор миграции сайта с Webflow на кастомную разработку: аудит, перенос контента, форм и interactions.

Как перенести сайт с Webflow на кастомную разработку
Сайт на Webflow может выглядеть готовым, при этом скрывая неожиданно много внутренней механики. Визуальная часть обычно оказывается самой простой; сложнее всё, что завязано на шаблоны, настройки по умолчанию и обходные решения Webflow. Если вы планируете перенос сайта с Webflow на кастомную разработку, первая задача — не кодинг. Первая задача — аудит.
Начните с того, что чаще всего не документируют. Именование классов, триггеры взаимодействий, структура CMS, логика форм, встраиваемые элементы и всё, что работает только потому, что Webflow умеет это интерпретировать. На сайте может быть 40 страниц и всего 6 настоящих шаблонов, а может быть 6 страниц и 40 мелких исключений. Эта разница важна.
Посмотрите на проект так, как будто вам придётся объяснять его человеку, который никогда не видел панель Designer. Это значит проверить, что является глобальным, что относится к конкретной странице, а что появилось случайно. Небольшая ремарка: «случайно» часто означает «кто-то исправил это в интерфейсе и нигде не записал».
1. Проведите аудит Webflow-проекта на скрытые ограничения
Сайты на Webflow часто прячут ограничения за аккуратными экранами. Система классов может выглядеть последовательной, но на деле зависеть от единичных переопределений, вложенных combo-классов или дублирующихся стилевых решений, добавленных ради одной страницы. При миграции эти детали превращаются в реальные инженерные решения, а не в визуальные мелочи.
Сначала изучите коллекции CMS. Подсчитайте типы коллекций, отметьте reference-поля и зафиксируйте, какие страницы от них зависят. Если индекс блога, страница автора и страница кейса используют одну и ту же коллекцию, это не просто организация контента. Это связанность данных. Неосторожно нарушите её — и новый сайт будет выглядеть правильно, но работать неправильно.
Затем разберите interactions. В Webflow они часто строятся вокруг загрузки страницы, позиции скролла, hover-состояний и таймеров. Часть этого можно воспроизвести напрямую в коде. Часть — не стоит копировать. Задержка в 0,5 секунды, которая выглядела нормально в Webflow, может ощущаться неестественно в кастомной сборке, особенно на мобильных устройствах, где рендеринг отличается. Проверьте всё ещё и на медленном соединении.
Не игнорируйте формы. Формы Webflow могут включать правила маршрутизации, скрытые поля, антиспам-фильтры, загрузку файлов и передачу данных в сторонние сервисы — и всё это легко пропустить, пока не исчезнет первая заявка. Форма, которая «просто работала» в Webflow, может зависеть от поведения платформы, на которое вы не планировали опираться. Это именно тот сюрприз, который съедает выходные перед запуском.
2. Отделите дизайнерские решения от реализации в Webflow
Хороший перенос начинается с прямого вопроса: что в этом дизайне является решением бренда, а что — просто удобством Webflow? Ответ редко очевиден. Стек карточек может отражать голос бренда, а может существовать только потому, что дизайнеру нужно было переиспользовать элемент списка коллекции. Это не одно и то же.
Разберите дизайн и реализацию по слоям. Шкала типографики, ритм отступов, иерархия кнопок, кадрирование изображений и стиль анимации обычно и есть настоящие дизайн-решения. А вот фиксированная ширина контейнеров, неудобная вложенность и повторяющиеся блоки div часто показывают ограничения платформы, а не замысел бренда. Сохраняйте замысел. Убирайте случайности.
Именно здесь команды начинают сентиментальничать. Им хочется сохранить «ощущение» сайта, и это нормально, но ощущение — не техническое задание. Переведите его в правила: отступ между секциями 24px, одна основная CTA на страницу, 3 уровня иерархии или конкретное соотношение сторон изображения. Команда разработки умеет работать с правилами. С ностальгией — нет.
Для полезной точки сравнения прочитайте как подключить мониторинг сайта, если миграция затронет ещё и поисковую видимость или отслеживание трафика. При переработке часто меняются и код, и сигналы, за которыми вы следите, и разделять их не стоит.
3. Сопоставьте текущую модель контента с кастомной структурой данных
Контент в Webflow обычно начинается со страниц и коллекций, но кастомная разработка требует более чистой модели. До начала кода сопоставьте каждый тип страницы с типом данных. Страница услуги может стать структурированной записью с полями для заголовка, описания, списка преимуществ, FAQ и SEO-метаданных. Для кейса может понадобиться отдельная модель с названием клиента, задачей, результатом, галереей и связанными услугами.
Сделайте это сопоставление сначала на бумаге или в таблице. Перечислите каждую коллекцию Webflow, каждое reference-поле, каждый вложенный элемент и каждый переиспользуемый компонент. Затем решите, нужен ли новому сайту один тип, два типа или пять. Вы не копируете структуру Webflow. Вы её переводите.
Обратите внимание на страницы, которые выглядят уникальными, но на самом деле являются вариантами одной и той же структуры. Если три лендинга используют одинаковые hero-блоки, блоки с отзывами и CTA, это, скорее всего, один шаблон с тремя записями. Если считать их отдельными страницами, позже это создаст лишнюю поддержку. CMS должна уменьшать объём работы, а не умножать его.
Переиспользуемые компоненты требуют особого внимания. В Webflow компонент может выглядеть как один блок, но фактический контент при этом может быть заблокирован, зеркально связан или вручную переопределён. В кастомной разработке нужно решить, что действительно переиспользуемо, а что должно оставаться редактируемым. Контент-редактор не должен гадать, повлияет ли изменение заголовка на странице 1 на страницу 9.
4. Определите зависимости от сторонних сервисов и встроенных элементов
На сайтах Webflow часто незаметно накапливаются внешние инструменты. Теги аналитики, heatmap-сервисы, чат-виджеты, системы бронирования, платёжные инструменты, баннеры согласия, социальные встраивания и скрипты отслеживания могут годами жить в проекте. Какие-то видны в интерфейсе. Какие-то находятся в сниппетах кастомного кода и уже сами не помнят, зачем были добавлены.
Сделайте список зависимостей с четырьмя колонками: название инструмента, что он делает, где появляется и нужно ли оставлять его. Последняя колонка особенно важна. Инструмент может быть полезным, но не обязательным. Если чат-виджет приносит одну заявку в квартал, перенос — хороший момент, чтобы спросить, нужен ли он вообще новому сайту. У лишнего есть привычка прятаться под формулировкой «на всякий случай».
Встроенный медиа-контент заслуживает отдельной проверки. Видеоплееры, карты, формы, PDF и контент, загружаемый с внешних платформ, могут вести себя иначе после того, как сайт перестанет быть размещён внутри инфраструктуры Webflow. Один embed может нормально работать на staging, а на production — сломаться из-за whitelist домена или порядка загрузки скриптов. Такое случается при миграции. Это техническая проблема, потому что это техническая проблема.
Если для вас важны вопросы доверия к сайту и рисков утечек, держите веб-безопасность в процессе ревью, пока список зависимостей ещё открыт. Миграция — удобный момент, чтобы убрать старые скрипты, сократить доступы и заменить всё, у чего больше нет понятного владельца.
5. Пересоберите формы, взаимодействия и динамическое поведение
Именно формы часто делают миграцию «настоящей». Контактной форме могут понадобиться правила валидации, условные поля, обработка файлов, маршрутизация по отделам и запасное сообщение на случай сбоя отправки. В Webflow часть этого можно спрятать за интерфейсом. В кастомной разработке всё это требует явных решений и тестирования.
Сначала пропишите правила, потом пишите код. Если пользователь выбирает «Партнёрство», должна ли форма показывать поле бюджета? Если кто-то загружает портфолио, будет ли ограничение 10 МБ? Если отправка не удалась, что произойдёт дальше? Ответы должны быть известны до начала разработки. Иначе разработчик придумает их за вас, а это обычно хуже.
Анимации и взаимодействия требуют такого же подхода. Hover-эффект может быть декоративным, а может объяснять иерархию. Появление по скроллу может быть приятным, а может прятать контент от пользователей, которые быстро пролистывают страницу. Проверьте взаимодействия с клавиатуры, мыши, на тач-экранах и на маленьких экранах. Одна анимация, которая выглядит элегантно на десктопе, может стать раздражающей при ширине 375px.
Не копируйте логику Webflow-interactions по привычке. Пересоберите поведение, а не механизм. Если цель — «привлечь внимание к блоку с тарифами через 2 секунды», реализация может быть проще исходной. Кастомный сайт должен отвечать на ту же пользовательскую задачу, а не сохранять точную последовательность кликов за кулисами.
6. Спланируйте передачу от старых Webflow-URL к новому сайту
Планирование URL нужно начинать до недели запуска. Старые URL Webflow, новые шаблоны адресов, внутренние ссылки и карта редиректов должны совпадать. Если пользователь добавил в закладки /about/team, а новый сайт перенёс этот контент на /company/team, редирект должен быть готов в первый же день. Битые пути быстро создают нагрузку на поддержку.
Сделайте таблицу сопоставления страниц. В одной колонке укажите текущий URL, в другой — новый URL, а в третьей добавьте примечание для особых случаев. Эти особые случаи важны: страница удалена полностью, страницы объединены, слаг переименован или контент разбит между двумя адресами. Без этой таблицы редиректы превращаются в угадывание.
Внутренние ссылки тоже нужно проверить. Многие сайты на Webflow содержат жёстко прописанные ссылки в основном тексте, карточках, кнопках и блоках футера. Если их экспортируют или пересоздают вручную, часть старых путей останется в местах, которые никто не проверяет. Поэтому краулинг ссылок стоит потраченного времени. Он находит скучные проблемы раньше пользователей.
Если вам нужен связанный референс по процессу, посмотрите как перенести сайт с ручных проверок. Пересечение простое: в обоих случаях переезд безопаснее, когда передача спроектирована, а не предполагается «по умолчанию».
7. Подготовьте передачу контента, ассетов и компонентов для разработчиков
Разработчикам нужен не только дизайн-файл. Им нужны тексты, экспортированные ассеты, заметки по компонентам, SEO-метаданные и список нестандартных случаев. Полированный файл Figma без контекста по контенту — это только половина работы. Команде кода всё равно придётся гадать, какой заголовок финальный, какое изображение утверждено, а какой CTA всё ещё на согласовании.
Пакуйте ассеты в осмысленные названия. «hero-final-v7.jpg» — это не система именования. Используйте названия, которые показывают разработчику, куда относится файл и что он делает. Сохраняйте и исходные размеры, потому что изображение 2400px ведёт себя иначе, чем кадр 1200px. Такие мелочи экономят циклы правок.
Документируйте всё, что не очевидно из дизайна. Отзыв меняется вручную или автоматически? FAQ-аккордеон должен открывать только один пункт или разрешать несколько одновременно? В футере показываются все ссылки или только ссылки верхнего уровня? Конкретные заметки избавляют от длинной цепочки вопросов в процессе разработки.
Это также момент проверить, нет ли в пакете контента чего-то чувствительного с точки зрения безопасности. API-ключи, учётные данные администратора, неопубликованные черновики и временные ссылки доступа не должны ходить по обычной почте. Если команде нужен чек-лист, страница о веб-безопасности содержит тот самый набор хозяйственных задач, который часто пропускают, когда все сосредоточены на визуале.
8. Сверьте пересобранный сайт с функциональностью, завязанной на Webflow
Финальная проверка — это сравнение, а не праздник. Пройдите по новому сайту и старому Webflow-сайту, проверяя поведение, а не только внешний вид. Открывайте меню, отправку форм, фильтры, аккордеоны, якорные ссылки, триггеры анимаций и мобильные брейкпоинты. Если что-то раньше работало на настройках Webflow по умолчанию, убедитесь, что кастомная версия даёт тот же результат.
Ищите мелкие отличия, которые пользователи замечают первыми. Не перекрывает ли sticky-header якорные цели? Иначе ли ведёт себя галерея изображений в Safari? Появляется ли динамически загружаемый блок на секунду позже, чем в Webflow? Это не косметические ошибки. Они влияют на ощущение завершённости страницы.
Проведите аудит контента и на пересобранном сайте. Отсутствующий alt-текст, битые ссылки, пустые карточки, дублирующиеся meta title и некорректная structured data становятся заметнее после функциональной проверки. Чистая сборка всё равно может выйти в продакшен с одним упущенным полем. А это поле иногда важнее, чем полировка макета.
Если аналитика или мониторинг входят в критерии запуска, следите за новым поведением и после выхода в продакшен. Кастомный сайт может работать корректно, но при этом давать другие счётчики событий, подтверждения форм или паттерны вовлечённости. Это нормально. Задача — подтвердить изменения, а не делать вид, что у них нет последствий.