Static archive of www.cacheme.org — CAChemE.org, migrated from WordPress to plain HTML so it can be version-controlled on GitHub and served from GitHub Pages (no PHP, no database, nothing to update).
docs/— the website, exactly as WordPress rendered it (GitHub Pages serves this folder). Every page keeps its original URL (/post-slug/→docs/post-slug/index.html), title, meta description and canonical tag, so search rankings are unaffected.scripts/mirror.py— the crawler that produceddocs/(re-runnable while the WordPress site is still up).scripts/verify.py— checks the mirror: every sitemap URL present, canonicals match their paths, no missing same-domain assets. Run it after any bulk edit.scripts/urls.txt— the URL inventory taken from the live Yoast sitemaps.
Edit the HTML in docs/ directly (or let Claude/Codex do it) and push —
GitHub Pages redeploys automatically in ~1 minute. After bulk changes run:
python3 scripts/verify.pycd docs && python3 -m http.server 8080Note: internal links are absolute (https://www.cacheme.org/...), unchanged
from WordPress, so clicking around a local preview jumps to the live domain.
That is intentional — the HTML is byte-identical to what Google has indexed.
- Enable Pages: repo Settings → Pages → Deploy from branch →
main/docs/. The site becomes previewable athttps://cacheme.github.io/web/(pages render by loading assets from the live domain until cutover — that's fine, the HTML is identical). - Add the custom domain (this starts the cutover):
echo www.cacheme.org > docs/CNAME, commit and push, then set Settings → Pages → Custom domain →www.cacheme.org. Optionally verify the domain first under the CAChemE org Settings → Pages → Verified domains. - Cloudflare DNS: change the
wwwrecord to aCNAMEpointing atcacheme.github.io(start DNS-only until GitHub issues the TLS cert, then re-enable the proxy 🟠 if wanted). Point the apexcacheme.orgto GitHub Pages A records 185.199.108.153 / .109. / .110. / .111.153, or use a Cloudflare redirect rule apex → www. - Enforce HTTPS in the Pages settings once the certificate is issued.
- Search Console: submit
https://www.cacheme.org/sitemap_index.xmlagain and watch Coverage for a couple of weeks. URLs, titles and content are unchanged, so no ranking impact is expected. - Decommission WordPress: after a few weeks of clean coverage reports,
cancel the Wesped hosting. Take a final cPanel backup of the WP database
and
wp-content/first, just in case.
Contact form, search box, comment posting and RSS feeds are inert or removed — they need a server. Existing comments remain visible in the page HTML.