WordPress Rebuild for a Veterinary Hospital
85-page veterinary hospital site rebuilt from Divi to Elementor Pro on Kinsta in 16 days and 63 hours. Four-specialist team, spec-faithful, zero overrun.
Screenshots captured by automated tooling — some elements may not have loaded fully or may layer on top of each other. For the most accurate view, visit the live site →
Rebuild the site on a new stack. Implement the spec. Don't improvise. Hand it back ready for cutover.
Client (end user): Fish Creek Animal Hospital — companion animal hospital, Montgomery, TX (Greater Houston area)
Engagement: White-label veterinary development for a US marketing agency
Delivered: September – October 2025 · 16 days · ~63 hours · on schedule, no overrun
The Craft of a Rebuild
Eighty-five pages of a Divi-on-Kinsta veterinary site rebuilt to an agency’s workbook spec in 16 days. The original ran on a paid Divi theme whose icon fonts were invisible to browser inspector; each Divi-specific dependency — icon system, lightbox counters, form styles — had to be identified, resolved with the agency, and confirmed before handoff, not after.
This case study is a record of one such rebuild, in which the agency owned the strategy and we owned the execution — the first veterinary practice in xaverPRO’s portfolio.
Snapshot
| Field | Value |
|---|---|
| End-client industry | Veterinary — Companion Animal Hospital |
| End-client | Fish Creek Animal Hospital (companion animal hospital, Montgomery, TX) |
| Engagement | White-label WordPress build for a US marketing agency specialising in local-business websites |
| Project Type | WordPress rebuild — Divi → Elementor Pro, hosted on Kinsta |
| Scope | Full site — services, team bios, patient forms including file-upload, appointment booking flow |
| Timeline | 16 days (17 Sep – 2 Oct 2025), on schedule |
| Effort | ~63 hours against a ~63-hour estimate — no overrun |
| Team | 4 specialists (~32h dev · QA rounds · PM) |
| Tech Stack | WordPress · Elementor Pro · Gravity Forms · Kinsta · Yoast · Site Checker (xaverPRO QA plugin) |
| Content parity check | Original-vs-rebuild content diff cleared before handoff — no missing copy, no broken internal links, no structural drift |
| Delivered | 85 pages, 85 meta titles, 10 templates from the agency’s VET template set (one DENTAL template repurposed for the patient gallery page), 8 redirects — all staging URLs returning HTTP 200 before cutover |
| Engagement cadence | 3 agency-raised issues · all closed by handoff (1-day active span, 2025-10-05 – 2025-10-05) |
| Review rounds | ≈5 review rounds across the 16-day calendar window |
| Per-ticket effort | 7 internal Redmine tickets · median 2.2h / P75 26.4h per ticket |
| Launch checklist | 84 items, signed off before cutover |
The Brief
A US marketing agency retained by Fish Creek Animal Hospital — a companion animal practice in Montgomery, TX — brought us in to rebuild the existing site from scratch on Elementor Pro. The original site ran on Divi (Elegant Themes), and the agency wanted the new build on a more maintainable modern stack, hosted on Kinsta. The spec: rebuild every page to match the original, implement all integrations, hit the quoted hours, and hand off ready for DNS cutover. Stay outside the client-facing loop throughout.
The ask was precise. Work against the agency’s sitemap workbook; replicate the Divi layout in Elementor Pro; implement the practice’s appointment forms including the patient file-upload workflow; and respect the spec line-by-line. Where original implementation details were proprietary to the old theme — Divi’s own icon font, for instance — source functionally equivalent replacements and confirm before shipping. No improvisation without flagging back.
The risk the agency was hedging against was specific to this engagement type: a Divi site uses its own icon system, page-building approach, and theme-level hooks that do not translate transparently to Elementor Pro. The failure mode in a CMS-switching rebuild is not a missing page — it is the widget that looked fine in staging but was actually the Divi fallback rendering, invisible until the DNS cutover exposed the gap. That is the gap the agency needed a careful rebuild team to close.
Risk context. When a veterinary practice changes CMS, every form a pet owner uses to upload medical records, every appointment-booking path they already know, every service page that already ranks in local search becomes a potential casualty of an inexact build. The risk is not visible at launch; it surfaces a week later when the file-upload field does not accept the right formats, or the mobile layout collapses on the phone in the waiting room. A rebuild that matches the visual output is necessary but not sufficient — it has to match the functional spec page by page, and then survive QA under load.
How We Did It
1. Template-first build. Rather than rebuilding every page independently, we mapped the original site’s structure into ten Elementor Pro templates covering every content type:
- Homepage, About Us, Contact Us, and Default Template fallback
- Services Lander + Service Page — the core clinical offering structure
- Doctor Page — individual doctor bio pages
- Blog Lander + Blog — post archive and individual post
- Patient Gallery — pet photo gallery page (live as
/pet-gallery/, built on the agency’s standard gallery template repurposed cross-industry from its dental origin to vet context)
Ten templates, 85 pages delivered. Future edits live in one place per page type.
2. Spec followed line-for-line, from the agency’s sheet. The agency provided a Google Sheets workbook — 10 tabs covering the full URL inventory, template assignments, client info, settings, and an 85-item launch checklist with pre- and post-cutover stages. We implemented each row as written. The original site’s Divi-specific elements — notably the Divi icon font used for service category markers across the site — required explicit resolution. Rather than substituting at will, we identified the source (Elegant Themes’ own Elegant Icon Font, publicly available), confirmed the match with the agency, and implemented it in Elementor Pro correctly. No “close enough” shipped without agency sign-off.
The principle behind this is simple: on a CMS-switching rebuild, the spec is more load-bearing than on a same-CMS rebuild, because nothing carries over automatically. A dev team that improvises around the spec does not just miss a redirect — it misses the entire category of Divi-specific conventions that were invisible until they weren’t.
3. Crawl-based verification, not “looks fine to me”. Before DNS cutover, the staging site was checked against the original production site: status codes, internal links, form integrations, and cross-page content consistency. The patient file-upload form — a high-stakes widget for a veterinary practice, where owners need to submit medical records ahead of an appointment — was tested end-to-end with real submissions. A QA round confirmed that the multi-form layout (with different form types per page) rendered consistently across the site.
4. Two QA passes before handoff. Internal QA ran across two developers — Timur Arbaev twice (at different build stages) — against desktop and mobile viewports. The second QA pass focused on rebuild accuracy and resolved outstanding pixel-level concerns before handoff.
The Divi icon font was the dependency that defined this rebuild’s risk profile. The original used Elegant Themes’ own icon font system — inaccessible through browser inspector — so rather than substituting, we traced it to the public Elegant Icon Font, confirmed it with the agency, and implemented it exactly. That single resolution closed the gap between a site that looks rebuilt and one that is.
Results
| Metric | Outcome |
|---|---|
| CMS migration | Divi (Elegant Themes) → Elementor Pro — full site, all page types |
| Spec fidelity — pages | 85 / 85 pages returning HTTP 200 on staging before cutover |
| Spec fidelity — meta titles | 85 / 85 meta titles and descriptions carried from original to rebuild |
| Spec fidelity — templates | 10 templates built and applied across the full site (9 from the agency’s VET template set, plus the Patient Gallery built on a repurposed dental gallery template) |
| Spec fidelity — redirects | 8 redirect rules implemented as specified |
| Spec fidelity — forms | All appointment forms including file-upload workflow implemented and tested end-to-end |
| Spec fidelity — icons | Divi icon font resolved to Elegant Icon Font, confirmed with agency before implementation |
| QA rounds | 2 internal rounds (Timur Arbaev) — all issues logged and resolved before handoff |
| Timeline | 16 days, delivered on schedule |
| Effort | ~63h — no overrun, no scope creep |
| Responsive verification | Cross-device QA confirmed across desktop and mobile viewports |
| Handoff | Staging delivered on Kinsta, ready for DNS cutover, no blocking issues at handoff |
| Site status | fishcreekanimalhospital.com live and returning HTTP 200 |
The outcome, restated plainly: the agency’s spec was implemented as written, inside the quoted hours, on the scheduled cutover window. The build migrated a full veterinary practice site off Divi and onto Elementor Pro without functional regression.
Operational Integrity at handoff
The Site Checker content-diff run against the original Divi site caught extra H3 tags added during the Elementor rebuild that had no counterpart in the original heading structure, and the elementor_colors check flagged unconfigured default colours in Elementor settings; the developer reviewed it against the configured global palette and marked it non-blocking, keeping the fail-zero gate clear. Pre-handoff QA ran through Site Checker — see our QA discipline for the categories and the fail-zero gate. The agency’s own QA layer — their tools, their process — ran post-handoff and surfaced issues into the shared backlog for our fix loop until they signed off.
Process
| Phase | Duration | Outcome |
|---|---|---|
| Brief & estimation | 1 day | Agency spec reviewed; ~63h quoted and agreed |
| Development | ~10 days | Full site rebuilt across Elementor Pro templates; Divi icon font resolved |
| Internal QA round 1 | 1 day | Timur Arbaev — initial QA pass, issues flagged |
| Fixes & QA round 2 | ~2 days | Issues resolved; second QA pass confirmed accuracy |
| Delivery & staging handoff | 1 day | Kinsta staging delivered, cutover-ready |
Phases overlap — QA began alongside late development, which is why the calendar timeline is 16 days rather than the sum of individual phases.
Team
Delivery team
- Pavel Sazhin — project management and QA iterations
- Timur Arbaev — QA (two rounds across build stages)
- Natalia Bogatel — lead developer (full site build, Divi-to-Elementor migration, template system)
- Anton Hersun, xaverPRO — project lead (estimation, agency-side communication, sign-off)
The partner agency remained the visible vendor throughout. Our team stayed invisible to the end client at every stage, including during the staging review and DNS cutover coordination. All decisions on URL structure and content assignment belonged to the agency; our role was implementation fidelity to the spec they provided.
For agencies considering a white-label WordPress build
If your agency has a Divi site to migrate and a Kinsta environment already chosen, send us the URL inventory and the original site link. We will review it for Divi-specific dependencies — icon systems, custom modules, form integrations — that require explicit resolution before migration starts, and return a fixed-hours estimate within 24 hours. No cost. No obligation to proceed.
Don't have a spec yet? Send a one-paragraph description — we'll come back with the questions worth asking. Send a description →
Site Checker runs before the agency sees anything.
Before handoff, every staging build runs through Site Checker — the WordPress QA plugin we built and maintain. It is a fail-zero gate: nothing goes to the agency with an open failure. Warnings are reviewed and judged non-blocking; the agency gets a clean slate to run their own QA layer against, not a staging site with known issues in the queue.