How We Migrated Cheetah Screens from Squarespace to WordPress

When Cheetah Screens — a Jacksonville, Florida motorized screen and awning contractor — needed to move their website off Squarespace, our team at Local Service Spotlight ran the full migration to WordPress on WP Engine. This meta article documents every step: decisions made, obstacles cleared, and the outcome. If your agency handles WordPress migrations for home services clients, this is the real playbook.

Task Summary

Client: Cheetah Screens, Jacksonville FL. Specialty: motorized screens, awnings, retractable door screens. Starting point: 28-page Squarespace site with dark green and gold branding. Goal: full migration to WordPress on WP Engine, preserve SEO equity (following BlitzMetrics internal linking principles), match brand identity, and integrate Jobber for lead capture. Timeline: approximately 6 working sessions spread across May 2026.

Step-by-Step Process

Step 1: WP Engine Hosting Setup

We provisioned a fresh WordPress install on WP Engine at cheetahscreens.wpenginepowered.com. WP Engine’s managed hosting provided staging isolation, built-in CDN, and a one-click cache purge — critical for fast iteration without stale-cache confusion during builds.

Step 2: Squarespace XML Export and WordPress Import

We exported all 28 pages from Squarespace using their XML export tool, then imported via WordPress’s native Import tool (Tools → Import → WordPress). Page content, slugs, and structure carried over. Squarespace-specific layout divs and shortcodes were stripped and rebuilt from scratch in Gutenberg.

Step 3: Theme and Plugin Stack

We activated Hello Elementor as the base theme — lightweight and Gutenberg-compatible. We initially planned to use Elementor as the page builder, but permanently abandoned it after hitting a critical JavaScript conflict: RankMath Pro‘s bundled lodash overwrote Underscore.js’s global _ variable, causing a _.template is not a function error that broke Elementor’s visual editor completely. Every page build from that point used Gutenberg with Custom HTML blocks.

Final plugin stack: Kadence Blocks, RankMath Pro (Agency tier), WPForms, Smush image optimization, and a custom global CSS plugin built for this project.

Step 4: Navigation Menu Rebuild

Navigation was rebuilt manually in WordPress (Appearance → Menus) with a Services dropdown and Resources dropdown matching the Squarespace structure. Final menu order: Home → Services → Resources → About Us → Contact.

Step 5: Global CSS Plugin

Instead of adding CSS per page, we created a custom WordPress plugin (cheetah-global-css.php) that injects brand styles, the Jobber popup, header fixes, and site-wide JavaScript via wp_footer. Saves were made via XHR POST to /wp-admin/plugin-editor.php to bypass WordPress’s “Heads up!” confirmation dialog — a workaround that enabled reliable programmatic updates throughout the project.

Step 6: Page Rebuilds (9 Core Pages)

We rebuilt 9 pages in Gutenberg using Custom HTML blocks: Home, Motorized Screens, Motorized Awnings, Retractable Door Screens, Rescreening, Financing, Warranty, Installation, About Us, and Contact. Each was QA’d in incognito against the live Squarespace site. All page title bars were hidden globally via CSS since WordPress auto-generates them and Squarespace does not.

Step 7: Jobber Lead Capture Integration

All site-wide “Get a Free Quote” CTAs were wired to Cheetah Screens’ Jobber work request form via a lightbox popup. The correct Jobber URL format — the newer /hubs/.../public/requests/[id]/embedded_new endpoint — was required for iframe auto-resizing via postMessage. The older booking URL did not support this behavior.

Step 8: Image Optimization

All media was uploaded to the WP Media Library (not hotlinked from Squarespace’s CDN, which returns 404s cross-domain). Smush saved 213KB across the library with lazy loading enabled.

Step 9: QA

All pages were QA’d in incognito after every WP Engine cache purge. We established a rule after one destructive save: always re-fetch the current page content via synchronous XHR immediately before any write operation — never trust cached JavaScript variables. This prevented further overwrites for the rest of the project.

Critical Decisions

Kill Elementor mid-project. The _.template conflict between RankMath Pro and Elementor was confirmed permanent. Switching to Gutenberg immediately saved days of fruitless debugging and gave us a more reliable build path.

Build a custom global CSS plugin instead of a child theme. Switching themes mid-project would have required re-implementing all styling. A PHP plugin hooking into wp_footer delivered site-wide control without any theme dependency.

Clarify Jobber URL before building CTAs. The client said “use the request form” — but the Squarespace site linked to the booking URL. We audited both Jobber URL types, identified the difference, asked for the correct URL, and avoided a full CTA rework.

Establish the re-fetch rule after a destructive save. A cached JavaScript variable overwrote several completed sections in a single save. After recovering, we made it a hard rule to always fetch fresh content before any write. No further data loss occurred.

Effort and Cost Comparison

TaskAgent TimeHuman TimeAgent CostHuman Cost ($35/hr)
Hosting setup + XML import~5 min2–3 hrs$0.08$70–$105
Plugin stack + theme setup~10 min3–4 hrs$0.15$105–$140
9 page rebuilds~90 min20–30 hrs$1.20$700–$1,050
Global CSS plugin~20 min4–6 hrs$0.30$140–$210
Jobber integration~15 min3–5 hrs$0.22$105–$175
Visual QA~30 min5–8 hrs$0.40$175–$280
Nav, menus, CTAs~10 min2–3 hrs$0.14$70–$105
TOTAL~3 hrs39–59 hrs$2.49$1,365–$2,065

What the Agent Could and Could Not Do

Handled autonomously: Content import, Gutenberg block creation, Custom HTML authoring, CSS and JS injection via plugin, Jobber popup, menu structure, image optimization settings, WP Engine cache purges, REST API saves, nonce refresh, plugin editor saves.

Required human input: WP Engine login, Jobber URL clarification from client, DNS cutover at registrar, featured image selection from real project photos, all Basecamp client updates (reviewed and posted by Hezekiah), final publish approval.

Related Meta Articles From This Project

Guidelines Compliance Scorecard

BlitzMetrics GuidelineStatusNotes
Hook opens with specific situationPASS
Answer in first paragraphPASS
Third person POV (company site)PASS
Short paragraphs, active voicePASS
No AI fluff phrasesPASS
Title under 60 charsPASS
H2/H3 structure, no heading abusePASS
Internal links to BlitzMetrics contentPASSAdded — all 6 sibling articles linked
Entity links (clients, tools, people)PASSCheetah Screens, Local Service Spotlight, RankMath Pro, Jobber all linked
Featured image (real photo)NEEDS HUMANUse Cheetah Screens project photo
RankMath SEO configuredNEEDS HUMANFocus keyword: Squarespace to WordPress migration home services
Categories and tags setNEEDS HUMANSuggested: Content Factory, WordPress, Site Migration, Local Service Spotlight
Evergreen contentPASS
CTA at endPASS

Want to see how Local Service Spotlight runs AI-assisted website migrations for home services contractors? Visit us to learn about our process — or read Dennis Yu’s meta article framework that drives how we document every project.

Dennis Yu
Dennis Yu
Dennis Yu is the CEO of Local Service Spotlight, a platform that amplifies the reputations of contractors and local service businesses using the Content Factory process. He is a former search engine engineer who has spent a billion dollars on Google and Facebook ads for Nike, Quiznos, Ashley Furniture, Red Bull, State Farm, and other brands. Dennis has achieved 25% of his goal of creating a million digital marketing jobs by partnering with universities, professional organizations, and agencies. Through Local Service Spotlight, he teaches the Dollar a Day strategy and Content Factory training to help local service businesses enhance their existing local reputation and make the phone ring. Dennis coaches young adult agency owners serving plumbers, AC technicians, landscapers, roofers, electricians, and believes there should be a standard in measuring local marketing efforts, much like doctors and plumbers must be certified.