wordpress-theme-to-emdash

Convert WordPress themes into EmDash CMS themes through a six-phase migration workflow.

Updated Aug 14, 2026
One-click install
npx skills add https://github.com/tatran0195/emdash-with-docs --skill wordpress-theme-to-emdash-tatran0195
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: wordpress-theme-to-emdash
Source: https://github.com/tatran0195/emdash-with-docs/tree/main/skills/wordpress-theme-to-emdash
Command: npx skills add https://github.com/tatran0195/emdash-with-docs --skill wordpress-theme-to-emdash-tatran0195

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Porting a WordPress theme to a modern CMS requires manually extracting design tokens, rewriting PHP templates, and recreating menus, taxonomies, and widgets, which is error-prone and time-consuming. ## Core Features & Use Cases - Six-Phase Migration Workflow: Structured phases covering discovery, design extraction, template conversion, dynamic features, seed content, and visual verification. - PHP to Astro Template Mapping: Converts WordPress template hierarchy (single.php, archive.php, category.php) into server-rendered Astro routes using EmDash APIs like getEmDashCollection and getMenu. - Design Token Extraction: Pulls CSS variables, fonts, and colors from style.css or theme.json into a global.css design system. - Use Case: Given the Twenty Twenty-Four WordPress theme, capture demo screenshots, extract its design tokens, convert its templates to Astro components, seed demo content, and verify visual parity against the original. ## Quick Start Port the WordPress theme twentytwentyfour to EmDash, starting by copying the scaffold and capturing screenshots of the demo site.

Frequently Asked Questions about wordpress-theme-to-emdash

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I convert a WordPress theme to Astro?▼

Follow the six-phase workflow: download the theme source, screenshot the demo site, extract CSS variables and fonts, map PHP templates to Astro routes, wire up menus and taxonomies via the EmDash API, then seed content and compare screenshots.

How do I migrate WordPress menus and widgets to a new CMS?▼

Identify register_nav_menus and register_sidebar calls in functions.php, then recreate them using EmDash getMenu and getWidgetArea APIs. Menus and widget areas can be defined in the seed file or created through the admin UI.

Can I use getStaticPaths for EmDash content pages?▼

No, EmDash content pages must be server-rendered because content changes at runtime through the admin UI. Use dynamic Astro routes with getEmDashEntry and redirect to 404 when an entry is missing.

Does this work with WordPress block themes using theme.json?▼

Yes, block themes store design tokens in theme.json, which the design extraction phase converts into EmDash CSS variables. The palette, typography, and layout settings map directly to custom properties in global.css.

Why does my seed file fail validation in EmDash?▼

Common causes are image fields using raw URLs instead of $media syntax, references using raw IDs instead of $ref:id format, and PortableText content missing the _type property. Fix the seed and restart the dev server after deleting data.db.

What license applies to a ported WordPress theme?▼

WordPress themes are GPL-licensed, so ported themes need a GPL-2.0 LICENSE file, a README crediting the original theme, and license set to GPL-2.0-or-later in package.json.