Astro to WordPress: a site rebuilt and measured.

For owners waiting on page edits: an Astro site rebuilt in WordPress, with 37 of 37 URLs matched and 0 redirects.

MeasuredAstro to WordPress

parity run, 37 URLs

URLs at the same path
37 of 37
redirects needed
0
page text identical, lowest of 36 pages
100.00%
editor blocks, 0 invalid
3,418

Title, H1, description and canonical path matched on 37 of 37.

Measured See every URL

What was converted

Changing phone details should not mean sending another request. We rebuild your site so you can log in and edit text and photos.

The site belongs to Red Rock Lower Level Design, a basement-finishing business in Colorado Springs.

The parity table

All 37 of the site's URLs matched in WordPress, with 0 redirects.

Checks compared page responses, search details and editable content at every original address.

What was counted Result Date Source
URLs at original paths 37 of 37 1 Nov 2026 Local comparison
Redirects 0 1 Nov 2026 URL check
Title, H1, description, canonical path 37 of 37 1 Nov 2026 Page fields
Main text minimum 100.00% 1 Nov 2026 Text comparison
Graph after origin/image-name normalization [JSON-LD] 37 of 37 1 Nov 2026 Normalized comparison
Editor blocks 3,418; 0 invalid 1 Nov 2026 Editor check
  • 37/37 status
  • 37/37 no redirect
  • 37/37 title
  • 37/37 H1
  • 37/37 description
  • 37/37 canonical
  • 37/37 text 99%+
  • 37/37 links in main
  • 37/37 images
  • 37/37 JSON-LD types
All 37 URLs through the public gate: the Astro original against its WordPress build
PathStatusChecksTextLinks in mainBlocks
/ 200 13/13 100% 36 = 36 123
/404.html 404 13/13 100% 5 = 5 template
/consultation-requested/ 200 13/13 100% 3 = 3 21
/privacy/ 200 13/13 100% 10 = 10 35
/request-service/ 200 13/13 100% 15 = 15 45
/service-areas/ 200 13/13 100% 26 = 26 42
/specialties/ 200 13/13 100% 31 = 31 41
/terms/ 200 13/13 100% 6 = 6 25
/who-we-are/ 200 13/13 100% 12 = 12 75
/service-areas/black-forest/ 200 13/13 100% 40 = 40 95
/service-areas/colorado-springs/ 200 13/13 100% 40 = 40 90
/service-areas/falcon/ 200 13/13 100% 42 = 42 98
/service-areas/fountain/ 200 13/13 100% 42 = 42 96
/service-areas/manitou-springs/ 200 13/13 100% 39 = 39 95
/service-areas/monument/ 200 13/13 100% 41 = 41 97
/service-areas/pueblo-west/ 200 13/13 100% 37 = 37 91
/service-areas/pueblo/ 200 13/13 100% 36 = 36 90
/service-areas/security-widefield/ 200 13/13 100% 39 = 39 96
/service-areas/woodland-park/ 200 13/13 100% 43 = 43 102
/specialties/basement-bedroom-with-egress/ 200 13/13 100% 44 = 44 119
/specialties/built-ins-storage-closets/ 200 13/13 100% 42 = 42 108
/specialties/ceiling-mechanical-hide-soffits-drop/ 200 13/13 100% 42 = 42 111
/specialties/dedicated-home-theater/ 200 13/13 100% 51 = 51 115
/specialties/design-only-3d-layout-consult/ 200 13/13 100% 42 = 42 115
/specialties/electrical-panel-and-lighting-upgrade/ 200 13/13 100% 43 = 43 117
/specialties/fireplace-feature-wall/ 200 13/13 100% 43 = 43 112
/specialties/flooring-package-lvp-carpet-tile-on-slab/ 200 13/13 100% 42 = 42 113
/specialties/full-basement-bathroom-from-scratch/ 200 13/13 100% 45 = 45 113
/specialties/full-kitchenette/ 200 13/13 100% 44 = 44 113
/specialties/high-end-basement-finish/ 200 13/13 100% 45 = 45 119
/specialties/hvac-zone-extension-mini-split/ 200 13/13 100% 42 = 42 112
/specialties/interior-drainage-and-sump-system/ 200 13/13 100% 42 = 42 112
/specialties/large-basement-finish-1-500-sf-standard-tier/ 200 13/13 100% 41 = 41 119
/specialties/media-room-wiring-blackout-seating/ 200 13/13 100% 43 = 43 116
/specialties/pre-finish-waterproofing-and-moisture-remediation/ 200 13/13 100% 49 = 49 117
/specialties/smart-home-integration-lighting-network-controls/ 200 13/13 100% 43 = 43 118
/specialties/wet-bar-sink-mini-fridge-cabinets/ 200 13/13 100% 42 = 42 112

Measured wordpress-example/PARITY.md · the 404 row is a path that does not exist, answered with 404 by both builds.

Side by side

Page

Before: Astro build / Captured

After: WordPress build / Captured

Before: Astro build /specialties/dedicated-home-theater/ Captured

After: WordPress build /specialties/dedicated-home-theater/ Captured

Build

Before: Astro build / Captured

After: WordPress build / Captured

Same paths on both sides, same pages, same look: the WordPress build matches the Astro original.

The site's Astro and WordPress builds, side by side.

Public visitors never reach the login or editing screens: a gate in front of WordPress blocks them. The form checks every entry.

How it was converted

This part is for the technical reader. Skip ahead to What you get.

We directed an AI coding agent and checked its work with scripts.

For your site, we list the URLs, turn page content into editable blocks and reuse the design styles. The imports and checks are repeatable. Templates and handling of search details are designed for your site.

  1. 01 Inventory the built pages every URL, title, H1 and description Automated
  2. 02 Choose the content model one WordPress page per URL, same hierarchy Designed for this site
  3. 03 Turn markup into core blocks all 37 bodies, no Custom HTML Automated
  4. 04 Reuse the design system stylesheet and font build Automated
  5. 05 Write the theme templates, render filters, settings page Designed for this site
  6. 06 Port the head and structured data titles, canonicals, JSON-LD Designed for this site
  7. 07 Import and export a repeatable rebuild script Automated
  8. 08 Check parity, editor and gate every URL against the original Automated
How the business's Astro build became a WordPress theme: five steps run as scripts and can be re-run; three were written for this site.

What changed and what stayed

The table checks page addresses and content. [URL parity] The before and after pair shows how the site looks. The diagram shows how built pages become editable blocks, then pass through import and checks. [conversion pipeline]

The design, the words and every address stayed the same; what changed is that each page is now editable in WordPress.

The public gate in front of WordPress

nginx, read-only policy

  1. GET /wp-login.php -> 403 refused
  2. GET /wp-admin/ -> 403 refused
  3. GET /wp-admin/admin-ajax.php -> 403 refused
  4. GET /xmlrpc.php -> 403 refused
  5. GET /wp-cron.php -> 403 refused
  6. GET /wp-json/ -> 403 refused
  7. GET /?author=1 -> 403 refused
  8. GET /readme.html -> 404 not found
  9. GET /wp-config.php -> 404 not found
  10. POST / -> 405 method refused
  11. GET / -> 200 served
  12. GET /specialties/dedicated-home-theater/ -> 200 served
  13. every page X-Robots-Tag: noindex, nofollow

Checked Login and editing stay on the owner's machine; the site's form is the one POST path.

What you get

  • Theme. You get a custom theme that controls how each page looks without a page builder or third-party plugin.
  • Editable pages. You add service pages, towns and photos through the same editor using standard content blocks.
  • Menus and settings. You get navigation menus and a settings screen for business details.
  • URL checks. You get the comparison table; no redirect map is needed when every old address answers directly.
  • Export and rebuild. You get a WordPress export and a script to repeat the build.

Checked before launch

Editor checks confirmed every block is valid: 3,418 blocks, 0 invalid.

For your site, we test on your own hosting stack and set up backups and mail delivery before launch.

Conversions for clients

We have converted sites into WordPress and out of it, and this example shows the method step by step.

Tell us what you would change

Describe the site you want to edit and what needs to stay the same. Say which changes you want to make yourself.

Start a project