Migration Handover — Inline Response Draft

Re: FW: Request for Complete Website Access & Hosting Details for Migration To: Joy Pearson, Sravan Kumar Status: DRAFT — ready for Eric review (last 2 TBDs are GA4 + Typekit ownership and the live site 500)


Original request (Sravan, 2026-04-15)

To proceed with the migration of all websites to our new hosting environment, we require complete and unrestricted access for each website, including: 1. Hosting account credentials (cPanel / hosting provider login) 2. Domain registrar access (where the domain is registered) 3. Full administrative access (not limited WordPress roles) 4. Details of the technology stack used (e.g., WordPress, HTML, PHP, or any custom framework) 5. FTP / File Manager / Database access (if applicable) 6. Complete website backup files 7. DNS details 8. Database access information


Inline answers

1. Hosting account credentials

Provider: Flywheel (https://getflywheel.com) — confirmed via response headers + masterdoc. Account ownership: Source Medical owns the Flywheel account. Joy / her team can log in directly at app.getflywheel.com.

Important: Flywheel does not use cPanel. There is no cPanel login. Migration tools that assume cPanel won't work — the new host will need to either (a) use Flywheel's "Add Collaborator" feature to grab the install via SFTP/MySQL, or (b) work from a Flywheel-generated backup.

Two installs exist on the Flywheel account:

Install Purpose Flywheel URL
Production Live site (sourcemedicalstaffing.com) source-medical-staffing.flywheelsites.com
Dev Pre-launch / staging environment source.flywheelsites.com

The new host should be aware of both — the dev install can likely be archived or skipped, but verify with Joy first.

Recommended path: generate Flywheel backups for both installs → share download links → they restore on Hostinger. Or, if they want live access, Source Medical can add Sravan as a collaborator on the Flywheel installs from the dashboard (Collaborators tab).

2. Domain registrar access

Registrar: Enom (acquired by GoDaddy in 2017 — that's why public WHOIS reports GoDaddy). Account ownership: Joy Pearson's personal Enom account (per masterdoc). Joy can log in at enom.com directly with her credentials.

If Joy wants to push the domain to a Care Career-owned account, that's a free internal push. Transferring to Hostinger's registrar takes 5–7 days and requires an EPP/auth code from Enom.

3. Full administrative access (WordPress)

We can provision a fresh WordPress Administrator account for Sravan on the production install. Need from Sravan: - Email address to attach (suggest sravan@surestaffindia.com) - Username preference

Will deliver via 1Password share link or whichever channel Joy/Sravan prefer for credentials.

4. Technology stack

Component Detail
CMS WordPress 6.9.4
Theme Custom theme source-medical (built by Grain & Mortar, ~2019). No build tools, no Tailwind, no flexible-content modules. CSS is hand-written.
PHP (TBD — pull from Flywheel; theme is compatible with PHP 7.4+)
JavaScript jQuery-based. Uses Slick (carousels), Waypoints + Animate.css (scroll animations), SmoothState.js (AJAX page transitions). All scripts enqueued in functions.php.
Custom Post Type jobs — registered in functions/post-type-jobs.php. Archive sorted by crisis_pay meta.
Templates template-home.php, template-traveler.php, template-client.php, template-about.php, template-apply.php, template-contact.php, template-general.php, archive-jobs.php, single-jobs.php.
Fonts Google Fonts (Montserrat, Buenard, Pathway Gothic One), Adobe Typekit kit tgu7kvn, MyFonts self-hosted DearJoeFour.
Analytics Google Analytics 4 (G-9J2ZB8F3F8) hardcoded in header.php.

Key plugins: - Advanced Custom Fields Pro (custom fields, theme options) - Gravity Forms (apply / contact forms — sublabel visibility filter active) - FacetWP (jobs filtering/search — reindex hook tied to WP All Import) - WP All Import Pro + ACF add-on (jobs feed import) - Admin Columns Pro - Yoast SEO - Akismet - WP-Optimize - Disable Gutenberg - Broken Link Checker - Bulk Delete - CSV/XML Import for ACF - GravityView Importer

⚠️ Things the new host should not break: - ACF field groups live in the database only (no ACF JSON exports in the theme). Any migration MUST include the acf-field-group and acf-field custom post types in the DB dump or all custom fields disappear. - Job import feed: Jobs are populated via WP All Import from a Google Sheet → https://docs.google.com/spreadsheets/d/1WqeJWnDOSVJ8006qz9e6zAC-x9pnsJhPKJOBCuKAA1U/. We've been running it on a nightly cron. After migration you'll need to set up cron on your end (or trigger imports manually from the WP All Import UI) — otherwise the jobs feed will stop updating. - FacetWP index will need to be rebuilt after migration (Settings → FacetWP → "Re-index"). - Adobe Typekit kit tgu7kvn is loaded via the <head>. After migration the domain on the new host (sourcemedicalstaffing.com) needs to remain whitelisted in the Typekit account or fonts will stop rendering. - Premium plugin licenses (ACF Pro, Gravity Forms, FacetWP, WP All Import Pro, Admin Columns Pro) are tied to G&M's accounts. After migration these plugins will keep functioning but stop receiving updates unless re-licensed under Source Medical / Care Career. New owner should plan to purchase fresh licenses.

5. FTP / File Manager / Database access

SFTP: Flywheel uses SFTP only (no plain FTP). Credentials are visible inside the Flywheel dashboard under each install → Advanced → SFTP/SSH.

Database: Flywheel exposes the database via the dashboard's "Database" tab (Adminer). For migration, the cleanest path is the Flywheel backup (which includes the full DB dump) rather than sharing live DB credentials — see #6.

6. Complete website backup files

We can generate a full Flywheel backup (zipped install — files + DB) and share via download link. Backup includes: - Full wp-content/ (themes, plugins, uploads) - Full database dump - wp-config.php (will need edits for the Hostinger environment — DB host, user, password, table prefix stays wp_)

ETA: same-day once Joy gives the go-ahead. We can also generate one for the dev install if needed.

7. DNS details

DNS host: Hover (ns1.hover.com / ns2.hover.com). Registrar: Enom (separate from DNS — Enom points the domain at Hover's nameservers, and Hover serves the actual records).

Current DNS records: - A record → 151.101.66.159 (Flywheel/Fastly edge) - MX → Microsoft 365 (sourcemedicalstaffing-com.mail.protection.outlook.com) - (Plus SPF / DKIM / DMARC and any subdomain records — full export available from Hover.)

For migration, choose one: - Option A (recommended, less invasive): keep DNS at Hover, just update the A record at Hover to point at Hostinger when ready to cut over. Requires Hover login — Joy has access. - Option B (clean break): at Enom, change the nameservers from Hover's to Hostinger's. This moves all DNS management to Hostinger.

⚠️ Don't change DNS until the new site is fully built and tested on Hostinger — otherwise the live site will go down. Recommended cutover: lower the TTL on the A record to 300s a day before the switch, then flip when ready.

⚠️ Email (MX) is independent of website hosting — Microsoft 365 will keep working as long as the MX, SPF (v=spf1 include:spf.protection.outlook.com -all), and DKIM records are not touched. Make sure Hostinger's onboarding doesn't auto-replace the MX.

8. Database access information

Same as #5 — Flywheel doesn't expose external DB connections by default. The clean migration path is the backup file in #6.


What we still need from Eric before sending

  1. ⚠️ GA4 property (G-9J2ZB8F3F8) — under a G&M Google account? Should we transfer ownership to a Care Career Google account, or have them set up a fresh property after migration?
  2. ⚠️ Adobe Typekit kit (tgu7kvn) — on a G&M Adobe account? If so, do we re-host the fonts via Google Fonts or transfer the kit?
  3. ⚠️ Production site is currently returning HTTP 500 (verified 2026-04-28). Resolve before handover, or note it and let them inherit?
  1. Confirm preferred handover method: collaborator access vs. backup file vs. live transfer.
  2. Walk through GA4 / Typekit handling.
  3. Set a target cutover date and lower DNS TTL 24 hrs before.
  4. Confirm that they're going to re-license premium plugins themselves.
  5. Flag the live site 500 — does Joy want us to fix or leave?