Многофилиальный стоматологический ребилд, сданный по спецификации за 17 дней
Многофилиальный стоматологический ребилд, сданный по спецификации за 17 дней — 65 часов, две клиники с интеграцией Dentrix Ascend, 8 раундов проверки, без перерасхода.
Скриншоты сделаны автоматическими инструментами — некоторые элементы могли не загрузиться полностью или перекрываться. Для наиболее точного представления открыть действующий сайт →
Переделать сайт на новом стеке. Реализовать по спецификации. Без импровизаций. Передать готовым к переходу.
Клиент (конечный пользователь): Sonrisa Family Dental — многофилиальная семейная стоматология, Chicago, IL
Формат сотрудничества: White-label разработка для маркетингового агентства из США
Сроки: май 2025 · 17 дней · 65 часов · по графику, без перерасхода
Подход к ребилду
45 часов разработки за 17 дней для стоматологической практики с 2 клиниками в Чикаго — 2 площадки филиалов, 2 набора ссылок на запись Dentrix Ascend и карта сайта, которая разрослась по ходу сборки, когда агентство выложило URL блога и подстраницы филиалов, которых не было в исходном трекере. Мы собирали по спецификации в том виде, в каком она устаканивалась, откладывали неопределённое и подтверждали каждый пробел в объёме до того, как трогать код.
Этот кейс — описание одного такого ребилда, где стратегия была за агентством, а исполнение — за нами.
Краткий обзор
| Поле | Значение |
|---|---|
| Индустрия конечного клиента | Медицина — Семейная стоматология |
| Конечный клиент | Sonrisa Family Dental (многофилиальная практика, Chicago, IL: Little Village — Pulaski · Little Village — Esperanza Health Center) |
| Формат сотрудничества | White-label WordPress разработка для маркетингового агентства из США, специализирующегося на сайтах для локального бизнеса |
| Тип проекта | WordPress ребилд на Elementor Pro, хостинг WP Engine |
| Объём работ | Полный сайт — услуги, страницы филиалов, интеграция записи, ресурсы для пациентов |
| Сроки | 17 дней (28 апр – 15 мая 2025), по графику |
| Трудозатраты | 65 часов при оценке 65 часов — без перерасхода |
| Команда | 3 специалиста (45 ч разработка · 10 ч PM · 10 ч QA) |
| Технологии | WordPress · Elementor Pro · WP Engine · Dentrix Ascend · Gravity Forms · Screaming Frog · Site Checker (xaverPRO QA-плагин) |
| Проверка контента | Сверка контента между старым и новым сайтом пройдена перед сдачей — нет пропущенного контента, нет битых ссылок, нет структурных расхождений |
| Результат | Спецификация выполнена строка за строкой — полный ребилд сайта, ссылки на запись для каждой локации, контрольный список запуска выполнен |
| Раунды проверки | ≈8 раундов за 17-дневное окно |
| Трудозатраты на задачу | 11 внутренних задач Redmine · медиана 6 ч / P75 14 ч на задачу |
Постановка задачи
У агентства был постоянный стоматологический клиент с двумя клиниками в Чикаго — практика, обслуживающая испаноязычные сообщества в районе Little Village под именем Sonrisa Family Dental. Существующий сайт требовал полного ребилда на WordPress с хостингом на WP Engine. Агентство выполнило стратегическую работу: таблица Google Sheets под названием «Website Redesign Progress Tracker», содержащая все URL для миграции, все meta title для переноса и контрольный список запуска.
Задача была конкретной. Взять спецификацию как есть; выполнить ребилд сайта на Elementor Pro; вернуть готовым к переключению. Не выходить на прямой контакт с клиентом. Внедрить SEO-решения как указано. Уложиться в согласованные часы.
Одна сторона этого ребилда добавляла объёма, которого нет у клиники с единственным адресом: сайт должен был одновременно обслуживать два разных адреса. Запись — через прямые ссылки Dentrix Ascend — у каждого филиала вела в свою систему приёма. Каждая ссылка филиала должна была вести в нужную клинику. Привяжешь к кнопке записи не тот параметр Dentrix Ascend — и пациент попадёт в форму, которая направит его в другую клинику.
Спецификация уточнялась и по ходу сборки: исходная таблица не включала лендинги услуг (/services/), филиалов (/locations/) и блога/библиотеки (/library/). Агентство уже по ходу решило, какие из них включить, какие отложить, а какие реализовать как есть. Мы держали паузу до этого подтверждения, а не додумывали намерение. Никаких творческих решений с нашей стороны — каждый структурный выбор оставался за агентством.
Контекст рисков. Многофилиальная стоматологическая практика, обслуживающая определённое сообщество, несёт иные риски при ребилде, чем однолокационная общая практика. Процесс записи — не один путь конверсии, а два, по одному на клинику. Каждая ссылка Dentrix Ascend содержит идентификатор пациента конкретного сайта — привяжите не тот идентификатор к адресу не той клиники, и сайт будет визуально работать, но направлять пациентов не в ту очередь записи.
Сбой не обнаружится на QA (кнопка срабатывает, форма загружается) и проявится только когда пациент придёт в клинику, где о нём нет записи. Проверка интеграции записи по каждой локации, в соответствии со спецификацией, не опциональна.
Как мы это сделали
1. Сборка на шаблонах. Вместо того чтобы пересобирать каждую страницу по отдельности, мы построили систему шаблонов под семейную стоматологию с двумя филиалами:
- Главная страница и Контакты — входные и конверсионные страницы
- Лендинг услуг + страница услуги — таксономия услуг, обеспечивающая все отдельные страницы лечения
- Страница филиала — отдельный шаблон под несколько адресов, на котором держались обе клиники (адрес Pulaski; адрес Esperanza Health Center), у каждой — своя ссылка на запись Dentrix Ascend
- О нас, Лендинг блога, Стандартный шаблон — вспомогательные страницы по спецификации
Шаблон филиала был несущим элементом: он должен был держать точную NAP-информацию (адрес, телефон, ссылка на карты) по каждой клинике отдельно, с правильной вставкой записи для каждого филиала.
2. Спецификация выполнена строка за строкой, по таблице агентства. Агентство дало таблицу Google Sheets со всеми URL для миграции, всеми требованиями к метаданным и контрольным списком запуска. Мы реализовали каждую строку как указано. Когда в исходной спецификации нашлись пробелы — три лендинга (/locations/, /services/, /library/), которых ещё не было в карте сайта, — мы вынесли это агентству и придержали эти страницы до явных указаний. Лендинг услуг собрали; лендинг библиотеки отложили по указанию агентства.
Коротко: при ребилде спецификация — это контракт между агентством и его клиентом. Задача команды разработки — защищать этот контракт, а не толковать его по-своему.
3. Проверка обходом, а не «на глаз». Перед переключением DNS мы прогнали Screaming Frog параллельно на действующем сайте и тестовой сборке. Коды ответа, цепочки редиректов, как открываются внутренние ссылки — каждое расхождение сверяли со спецификацией агентства. Особое внимание — ссылкам на запись: URL Dentrix Ascend каждого филиала сверяли с параметрами из брифа. Второй обход после запуска подтвердил, что все внутренние ссылки открываются на опубликованном сайте.
4. Контрольный список запуска закрыт перед сдачей. Контрольный список агентства охватывал проверку перед миграцией по всем категориям: дизайн, функциональность, контент, SEO и аналитика, адаптивность, проверка интеграций (запись Dentrix по филиалам, маршрутизация писем Gravity Forms, перенос GA/GTM) и DNS-миграция на WP Engine. QA на разных устройствах: Chrome / Firefox / Safari / Edge и шесть разрешений (1920 / 1280 / 1024 / iPad / мобильная портретная / мобильная альбомная).
Здесь сработала одна вещь — держать паузу там, где в спецификации были пробелы. Трёх лендингов — /locations/, /library/, /services/ — по ходу сборки не было в исходной таблице; мы вынесли это агентству и ничего на этих страницах не строили до указаний. Ссылки на запись шли по тому же правилу: параметр Dentrix Ascend каждого филиала сверяли со спецификацией до привязки, а не достраивали из контекста.
Результаты
| Метрика | Результат |
|---|---|
| Верность спецификации — сборка | Полный сайт перестроен по спецификации — все страницы, все мета-данные, все интеграции как указано |
| Верность спецификации — интеграция записи | Ссылки на запись Dentrix Ascend по филиалам сверены со спецификацией — маршруты Pulaski и Esperanza Health Center подтверждены |
| Верность спецификации — редиректы | Все требования к редиректам из таблицы реализованы как 301 |
| Сроки | 17 дней, сдано по графику |
| Трудозатраты | 65 ч / 65 ч — без перерасхода, без расширения объёма |
| Проверка адаптивности | Ноль проблем с вёрсткой на 4 браузерах × 6 разрешениях |
| Внутренний QA | Все задачи из объёма агентства закрыты перед сдачей |
| Статус сайта | Работает на WP Engine по адресу https://sonrisafamilydental.com/. |
| Продолжение сотрудничества | Улучшения после запуска, включая редизайн главной страницы — каждый этап сдан в дополнительных спринтах в рамках тех же отношений с агентством |
Если коротко: спецификация агентства была выполнена как написано, в согласованные часы, в запланированный день переключения.
Контроль качества
Сверка на расхождения поймала две перевёрнутые URL-пары — страницы по адресу /invisalign/services/, тогда как все остальные в этом разделе шли по /services/invisalign/, — а ссылки на запись Dentrix Ascend по филиалам сверили с двумя разными параметрами pid из брифа (ASC2000000000958 для Pulaski, ASC2000000000895 для Esperanza Health Center) до того, как сборка ушла из тестовой среды.
QA перед сдачей проводился через Site Checker — см. наш подход к QA: категории и порог нулевых ошибок. Свой проверочный контур агентства шёл после сдачи, и найденные проблемы попадали в общую очередь правок для нашего цикла исправлений до их утверждения.
Процесс
| Фаза | Длительность | Результат |
|---|---|---|
| Бриф и оценка | 1 день | Спецификация агентства изучена; 65 ч согласовано |
| Разработка | ~12 дней | Полный сайт перестроен через шаблоны на тестовой среде WP Engine |
| Внутренний QA и проверка | 2 дня | Задачи из очереди разобраны; ссылки на запись по филиалам проверены |
| Проверка спецификации | 1 день | Редиректы, мета-данные, интеграции записи сверены с таблицей |
| Сдача и переключение DNS | 1 день | Сайт запущен на WP Engine, без простоя |
Фазы пересекались (QA шёл параллельно завершающей разработке), поэтому календарный срок — 17 дней, а не сумма отдельных фаз.
Команда
Команда проекта
- Никита Тумашевич — ведущий разработчик (полная сборка сайта и система шаблонов)
- Павел Сажин — QA и реализация исправлений после запуска
- Анна Полунина — координация проекта, сверка объёма работ с таблицей
- Антон Херсун, xaverPRO — руководитель проекта (оценка, коммуникация с аккаунт-менеджером агентства, утверждение)
Конечный клиент нас не видел на протяжении всей работы. Все решения о том, какие страницы создавать, какие локации включать, какие ссылки на запись использовать и как обрабатывать страницы, отсутствовавшие в исходной спецификации, полностью принадлежали агентству — мы общались через агентство, а не напрямую со стоматологической клиникой.
Агентствам, заказывающим ребилд WordPress
На ребилде сети филиалов запись завязана на конкретный адрес клиники: у этой практики — несколько филиалов с раздельными потоками записи, у других — одна клиника с единственной воронкой. Сбой тихий: пациент жмёт ссылку филиала и попадает не в ту очередь приёма. Карта редиректов теряет строки — ранжируемые агентством страницы филиалов отдают 404. Разметка по каждой клинике слетает на импорте — расширенные сниппеты исчезают.
Вопрос не в том, «соберёте ли заново», а в том, как именно вы проверите путь записи каждого филиала до переключения.
Пришлите адрес текущего сайта, черновик карты редиректов или макеты. Мы проверим поток записи по каждому филиалу, пройдём каждую строку редиректов и вернём смету в фиксированных часах. Без оплаты, со сметой в часах.
У вас ещё нет ТЗ? Пришлите описание в один абзац — мы вернёмся с вопросами, которые стоит задать. Прислать описание →
Site Checker запускается до того, как агентство что-либо видит.
Перед передачей каждый сборки в тестовой среде прогоняется через Site Checker — WordPress QA-плагин, который мы разработали и поддерживаем. Это шлюз с нулевой терпимостью к ошибкам: к агентству не уходит ничего с открытыми проблемами. Предупреждения рассматриваются и признаются некритическими; агентство получает чистый старт для своего слоя QA, а не тестовый сайт с известными проблемами в очереди.