Ребилд стоматологического сайта на WordPress (63 URL), строго по ТЗ за 19 дней
63 URL восстановлены в Reno, NV, по 6 шаблонам Elementor Pro — сдано за 19 дней и 82 часа, строго по ТЗ, 65 ошибок QA устранены до запуска.
Скриншоты сделаны автоматическими инструментами — некоторые элементы могли не загрузиться полностью или перекрываться. Для наиболее точного представления открыть действующий сайт →
Переделать сайт на новом стеке. Реализовать по спецификации. Без импровизаций. Передать готовым к переходу.
Клиент (конечный пользователь): White Pine Family Dental — семейная и косметическая стоматология, Reno, NV
Формат сотрудничества: White-label разработка для маркетингового агентства из США
Сроки: декабрь 2024 · 19 дней · 82 часа · по графику, без перерасхода
Подход к ребилду
63 URL по 6 шаблонам, сданные строго по спецификации из таблицы — ребилд сайта семейной стоматологической клиники в Рино включал библиотеку обучающих материалов для пациентов, AJAX-фильтр по категориям которой не мог быть реализован встроенными средствами конструктора страниц. Мы разработали динамический блок с нуля, используя слой данных Elementor, и сдали все 63 URL за 19 дней, в рамках сметы на 82 часа, без перерасхода.
Этот кейс — описание одного такого ребилда: агентство отвечало за стратегию, мы — за реализацию. Он также фиксирует то, что часто проявляется в ребилдах такого масштаба: сотрудничество не всегда заканчивается на запуске. После сдачи сайта агентство продолжало работать с нами ещё 13 месяцев — доработки, обновление дизайна и разработка шаблонного дизайна. Качество сборки сделало возможным это долгосрочное сотрудничество.
Краткий обзор
| Поле | Значение |
|---|---|
| Индустрия конечного клиента | Медицина — семейная и косметическая стоматология |
| Конечный клиент | White Pine Family Dental (Reno, NV) |
| Формат сотрудничества | White-label разработка на WordPress для маркетингового агентства из США, специализирующегося на сайтах для локального бизнеса |
| Тип проекта | Ребилд WordPress на Elementor Pro, хостинг WP Engine |
| Объём | Полный сайт — 63 URL по 6 шаблонам: главная, о нас/команда, услуги (реставрация, профилактика, косметология), информация для пациентов, блог, контакты |
| Сроки | 19 дней (12 дек 2024 — 31 дек 2024), по графику |
| Трудозатраты | 82 часа при смете 82 часа — без перерасхода на этапе ребилда |
| Команда | 5 специалистов (62 ч разработка · 20 ч динамический контент · остальное QA и управление) |
| Технологии | WordPress · Elementor Pro · WP Engine · Rank Math · ACF · Screaming Frog · Site Checker (QA-плагин xaverPRO) |
| Проверка контента | Сравнение оригинального и нового контента пройдено перед сдачей — нет пропущенного текста, битых внутренних ссылок, структурных расхождений |
| Результат | ТЗ выполнено строка за строкой — 63 URL восстановлены, 6 шаблонов применены, контрольный список запуска из 49 пунктов закрыт, 65 ошибок QA устранены |
| Продолжение сотрудничества | Дополнительные раунды доработок на протяжении 13 месяцев — исправления динамического контента, битых ссылок, обновления дизайна, обновление дизайна сайта и разработка шаблонного дизайна — каждый в рамках аддитивных спринтов в тех же отношениях с агентством |
| Интенсивность | 53 задачи от агентства · все закрыты к моменту сдачи |
| Раунды проверки | ≈10 раундов проверки за 19 календарных дней |
| Трудозатраты на задачу | 20 внутренних задач Redmine · медиана 3 ч / P75 12,1 ч на задачу |
| Контрольный список запуска | 49 пунктов, согласованы перед запуском |
Постановка задачи
У агентства был постоянный клиент — стоматологическая клиника семейной и косметической стоматологии в Рино, Невада, — чей существующий сайт на WordPress требовал полного ребилда на Elementor Pro. Агентство уже выполнило стратегическую работу: таблица Google Sheets, в которой каждый текущий URL сопоставлен с новым путём, каждый meta title перенесён, полный список шаблонов и контрольный список запуска из 49 пунктов, охватывающий проверку до и после миграции.
Существующая структура URL в основном сохранялась: из 63 URL только 4 требовали настройки редиректов — остальные были восстановлены на тех же слагах. Бриф агентства включал явное требование по динамическому контенту: библиотека обучающих материалов для пациентов с загрузкой постов с фильтрацией по категориям, реализованная как собственный блок HTML/CSS/JS.
Встроенные инструменты контента Elementor не могли обеспечить загрузку с фильтрацией по категориям, которую требовало ТЗ — библиотеку пришлось разрабатывать вручную с помощью встроенных CSS и JavaScript, загружая контент из специальных постов через AJAX. Наша задача состояла в том, чтобы перестроить весь сайт, реализовать динамический контент и передать его готовым к запуску.
Риск здесь был не в сложной миграции — структура URL была стабильной. Риск заключался в том, что разработчик мог точно перестроить страницы, но упустить интеграцию динамического контента или сломать фильтрацию библиотеки обучающих материалов при переходе с тестовой среды в продакшен. Канал привлечения клиентов семейной стоматологической клиники — локальный поиск; ребилд, который сохраняет URL, но ломает контент сайта, всё равно снижает поисковую видимость клиники.
Контекст рисков. Когда ребилд сохраняет архитектуру URL, но заменяет базовый стек — те же слагы, новая сборка Elementor, новые динамические функции — режим отказа невидим при поверхностной проверке. Главная загружается, контактная форма работает, страницы услуг рендерятся. Но фильтр категорий в библиотеке обучающих материалов может не загружать правильные посты после запуска.
Meta title может сдвинуться на одно слово. «Хлебные крошки» могут ссылаться на тестовый домен. Это не катастрофические отказы; это скрытое ухудшение, которое проявляется только когда пациент переходит из поисковой выдачи и видит не тот контент. Агентство хеджировало именно это: разработчик, который проверяет видимые страницы, но не динамическое поведение под ними.
Как мы это сделали
1. Сборка на основе шаблонов. Вместо того чтобы перестраивать 63 URL по одному, мы свели их к шести переиспользуемым шаблонам и разместили каждый URL в соответствующем шаблоне:
- Главная — основная точка входа клиники
- О нас / Страница врача — биографии команды и главного стоматолога
- Страница услуги — самый тяжёлый шаблон, применён к 38 URL услуг и лечения, охватывающих реставрационную стоматологию (протезы, импланты, коронки), профилактический уход (лечение дёсен, осмотры) и косметическую стоматологию (Botox, Invisalign, отбеливание, виниры)
- Блог — архив контента и шаблон отдельного поста
- Стандартный шаблон — страницы информации для пациентов, юридические страницы и вспомогательный контент
- Контакты — страница конверсии
Шесть шаблонов — весь сайт сдан. Будущие правки со стороны агентства живут в одном месте на тип страницы.
У агентства был существующий продакшен, поэтому проект начался со структурного выбора: строить на тестовую копию или работать в черновиках в продакшене. Мы выбрали полноценную тестовую среду на WP Engine — продакшен оставался нетронутым во время сборки, а запуск был единоразовым событием после прохождения проверки всех шаблонов.
2. ТЗ выполнено строка за строкой, из таблицы агентства. Агентство передало нам таблицу Google Sheets: каждый URL для перестройки с целевым путём, каждый meta title и описание для сохранения, каждое назначение шаблона и контрольный список запуска из 49 пунктов. Мы реализовали каждую строку как написано. Где в таблице было значение — оно попало на новый сайт. Где его не было — мы отметили это для агентства. Никаких «творческих интерпретаций» не было.
Принцип здесь прост: при ребилде ТЗ — это контракт между агентством и его клиентом. Задача команды разработки — защищать этот контракт, а не редактировать его.
3. Проверка на основе обхода, а не «на глаз». До переключения DNS мы запустили Screaming Frog на действующем сайте и тестовой сборке параллельно. Коды статуса, битые ссылки, цепочки редиректов, различия в мета-тегах — каждое расхождение сверено с ТЗ агентства. 4 строки редиректов в таблице проверены индивидуально: каждый старый путь вёл на правильный новый адрес без цепочек и коллизий. Второй обход после запуска подтвердил, что все внутренние ссылки разрешаются на рабочем домене.
4. 65 ошибок QA, все закрыты до сдачи. Журнал ошибок агентства зафиксировал две волны QA: исходную очередь задач (12 из 13 закрыто) и текущую, открытую в период последующего сотрудничества (53 из 53 закрыто). Ошибки варьировались от несоответствий в формулировках H1 и битых ссылок в блоге до корректировки ширины макета и поведения мобильного слайдера. QA на разных устройствах на Chrome / Firefox / Safari / Edge и шести типах экранов (1920 / 1280 / 1024 / iPad / мобильная вертикаль / мобильная горизонталь).
Работа в рамках лимита в 82 часа означала, что реализацию динамического контента нужно было решить на раннем этапе — Elementor не мог обеспечить библиотеку обучающих материалов с фильтрацией по категориям, поэтому команда написала AJAX-блок с нуля до того, как финальные страницы были в разработке. Принятие этого решения на первой неделе, а не при сдаче, позволило сохранить 19-дневный срок.
Результаты
| Метрика | Результат |
|---|---|
| Соответствие ТЗ — URL восстановлены | 63 / 63 URL восстановлены на тех же слагах, как указано в ТЗ |
| Соответствие ТЗ — редиректы | 4 / 4 редиректа реализованы как 301 |
| Соответствие ТЗ — шаблоны | 6 / 6 шаблонов разработаны и применены на всём сайте |
| Контрольный список запуска | 49 пунктов проверены и согласованы перед запуском |
| Очередь задач QA (исходная) | 12 / 13 задач закрыты как Completed |
| Очередь задач QA (текущая) | 53 / 53 задач закрыты как Completed |
| Динамический контент | Библиотека обучающих материалов для пациентов с загрузкой постов с фильтрацией по категориям реализована и проверена |
| Сроки (этап ребилда) | 19 дней, сдано по графику |
| Трудозатраты (этап ребилда) | 82 ч / 82 ч смета — без перерасхода на ребилде |
| Проверка адаптивности | Ноль проблем с вёрсткой на 4 браузерах × 6 типах экранов |
| Внутреннее QA | Все пункты очереди задач, относящиеся к агентству, закрыты до сдачи |
| Сдача | Сайт запущен на WP Engine в запланированный день переключения, без простоя |
| Статус сайта, проверено 2026-04 | Сайт в работе, отдаёт 200 по свежей curl-проверке |
| Продолжение сотрудничества | Дополнительные раунды доработок на протяжении 13 месяцев — исправления динамического контента, обновления дизайна, обновление дизайна сайта и разработка шаблонного дизайна — каждый в рамках аддитивных спринтов в тех же отношениях с агентством |
Итог, если коротко: ТЗ агентства было выполнено как написано, в рамках указанных часов, в запланированный день запуска. Отношения продолжились 13 месяцев не потому, что сборку латали постфактум, а потому что она выдержала проверку после запуска.
Контроль качества
Сравнение с оригинальным сайтом выявило две проблемы, которые поверхностная проверка пропустила бы: перепутанная буква в слаге (/patient-information/sheduling/ вместо /scheduling/) и битая кнопка записи, якорь которой указывал на #about-adress вместо правильного раздела контактной страницы — обе найдены и исправлены до того, как агентство увидело тестовую сборку.
QA перед сдачей проходило через Site Checker — см. наш подход к QA для ознакомления с категориями и принципу нулевых ошибок. Собственный слой QA агентства — их инструменты, их процесс — работал после сдачи и фиксировал замечания в общую очередь задач для нашего цикла исправлений до их согласования.
Процесс
| Этап | Длительность | Результат |
|---|---|---|
| Бриф и оценка | 1 день | ТЗ агентства просмотрено; 82 ч оценены и согласованы |
| Разработка | ~13 дней | Весь сайт перестроен по 6 шаблонам на тестовой среде WP Engine; реализован блок динамического контента |
| Внутреннее QA и проверка | 3 дня | 65 ошибок из очереди задач агентства в две волны; все закрыты |
| Проверка ТЗ | 1 день | Meta и редиректы сверены с таблицей; обход подтверждён |
| Сдача и переключение DNS | 1 день | Сайт запущен на WP Engine, без простоя |
Этапы пересекались (QA шёл параллельно с поздней разработкой), поэтому календарный срок — 19 дней, а не сумма отдельных этапов.
Команда
Команда проекта
- Никита Тумашевич — ведущий разработчик (полная сборка сайта, система шаблонов и динамический контент)
- Наталия Богатель — разработчик (footer, страница команды и обновления в рамках последующего сотрудничества)
- Павел Сажин — QA и реализация исправлений после запуска
- Тимур Арбаев — разработчик (разработка шаблонного дизайна и раунды доработок)
- Антон Херсун, xaverPRO — руководитель проекта (оценка, коммуникация с агентством, согласование)
Агентство оставалось видимым поставщиком; мы оставались невидимыми для конечного клиента на протяжении всего запуска и миграции. Все решения по сохранению URL и стратегии редиректов принадлежали агентству; наша роль заключалась в точности реализации переданного ТЗ.
Агентствам, заказывающим ребилд WordPress
При ребилде сайта стоматологической клиники невидимые ошибки переноса — редиректы, мета-заголовки, структурированная разметка — определяют, потеряет ли агентство позиции. У этой практики — многопрофильная клиника с несколькими отделениями; у других — узкая специализация или одна точка приёма. Редиректы окажутся неполными — старые URL отдадут 404. Мета-заголовки перепишутся новой темой — сниппеты в выдаче изменятся за ночь. Структурированная разметка не доедет после импорта — Knowledge Panel выпадет из кеша.
Поэтому подрядчику стоит задавать не вопрос «перенесёте ли все страницы?», а вопрос «как именно вы сохраните карту редиректов и мета-заголовки при смене темы?»
Пришлите адрес текущего сайта и черновик карты редиректов (если есть) или макеты. Мы проверим карту редиректов на полноту, сверим текущие мета-заголовки с прежним сайтом и вернём фиксированную смету в часах. Аудит без оплаты, ответ в течение рабочего дня.
У вас ещё нет ТЗ? Пришлите описание в один абзац — мы вернёмся с вопросами, которые стоит задать. Прислать описание →
Site Checker запускается до того, как агентство что-либо видит.
Перед передачей каждый сборки в тестовой среде прогоняется через Site Checker — WordPress QA-плагин, который мы разработали и поддерживаем. Это шлюз с нулевой терпимостью к ошибкам: к агентству не уходит ничего с открытыми проблемами. Предупреждения рассматриваются и признаются некритическими; агентство получает чистый старт для своего слоя QA, а не тестовый сайт с известными проблемами в очереди.