WordPress Theme to EmDash
Porter des thèmes WordPress vers EmDash en six phases. Lisez le fichier de phase avant de commencer chaque phase.
Critical Rules
- Copier le scaffold d'abord - Commencez chaque thème en copiant
scaffold/depuis cette skill - Prendre des captures d'écran de la démo - Identifiez l'URL de démo et capturez tous les types de pages avec agent-browser avant de commencer
- Pas de contenu en dur - Utilisez
getSiteSettings()pour titre/tagline,getMenu()pour la navigation - Pages rendues côté serveur - N'utilisez jamais
getStaticPaths()pour le contenu EmDash - Astro 6 - Utilisez
ClientRouterau lieu deViewTransitions, syntaxe Zod 4, Node 22+ - Utiliser le composant Image emdash - Pour toutes les images, importez Image depuis "emdash/ui"
Phases
| Phase | Fichier | Résumé |
|---|---|---|
| 1 | phases/1-discovery.md |
Télécharger le thème, capturer la démo, images |
| 2 | phases/2-design.md |
Extraire variables CSS, polices, couleurs |
| 3 | phases/3-templates.md |
Convertir templates PHP en Astro |
| 4 | phases/4-dynamic.md |
Paramètres site, menus, taxonomies, widgets |
| 5 | phases/5-seed.md |
Créer seed avec contenu de démo |
| 6 | phases/6-verify.md |
Capturer, comparer, itérer, build |
Checklist
Setup
- [ ] Copier
scaffold/vers le nouveau répertoire de thème. Sauf indication contraire de l'utilisateur, faites-en un sous-répertoire dethemes/et nommez-le d'après le thème WordPress (ex :themes/twentytwentyfour/). - [ ] Renommer le dossier, mettre à jour
package.json - [ ] Vérifier la build :
pnpm build
Phase 1 : Discovery
- [ ] Source du thème téléchargée
- [ ] Site de démo identifié
- [ ] Dossier
discovery/créé avecscreenshots/,images/,notes.md - [ ] Tous les types de pages capturés
- [ ] Images d'exemple téléchargées
Phase 2 : Design
- [ ] Variables CSS dans
global.css - [ ] Polices chargées
- [ ] Couleurs correspondant à la démo
Phase 3 : Templates
- [ ] Accueil, article unique, archive, catégorie, tag, page, 404
- [ ] Composants extraits (PostCard, etc.)
Phase 4 : Dynamic
- [ ] Paramètres site (titre, tagline, logo depuis CMS)
- [ ] Menus de navigation (depuis CMS, pas en dur)
- [ ] Taxonomies
- [ ] Zones de widget (si applicable)
Phase 5 : Seed
- [ ] Fichier seed créé avec images de démo à
.emdash/seed.json(ou connecté viapackage.json#emdash.seed)
Phase 6 : Verify
- [ ] Serveur dev applique le seed proprement au premier chargement (pas d'erreurs de validation dans les logs)
- [ ] Captures d'écran de sortie capturées
- [ ] Comparaison visuelle effectuée
- [ ] Build réussit :
pnpm build - [ ] Fichier LICENSE téléchargé (GPL-2.0 dans la plupart des cas)
- [ ] README crédite le thème original
Reference Documents
references/astro-essentials.md- Patterns Astro 6references/template-patterns.md- Conversion PHP → Astroreferences/concept-mapping.md- Concepts WP → EmDashreferences/emdash-api.md- Référence API complètereferences/design-extraction.md- Techniques d'extraction CSS