CommunityImagegithub.com

auceps-dev-team/wp-site-build

Construire ou refondre un site WordPress complet à partir d'une référence visuelle : maquette HTML locale, conversion en thème à blocs modifiables, staging local avec outils reproductibles, déploiement approuvé par le client et cinq portes d'acceptation mesurées.

Qu'est-ce que wp-site-build ?

Cette compétence guide un agent AI à travers la création complète d'un site WordPress — vitrine, boutique WooCommerce ou application web — en suivant une méthode éprouvée en phases. Elle commence toujours par une maquette HTML locale (phase 2) pour itérer rapidement sur le design avant toute conversion en thème à blocs. Le processus garantit que le client peut modifier le site sans code, grâce à un thème bloqué sans blocs `core/html` bruts. Le staging est entièrement local et chaque changement est scripté via des outils PHP idempotents, rejouables sur production sans duplication d'effets. La compétence intègre cinq portes d'acceptation (fidélité pixel, aucun bloc interdit, images dans la médiathèque, modifications en éditeur, contenu dynamique fonctionnel) mesurées par code. Elle impose une règle stricte : aucune liberté esthétique ne s'écarte de la référence visuelle fournie par le client, et toute connaissance factuelle (avis, prix, contenu juridique) reste marquée comme `à compléter` ou `à vérifier`. Les plateformes cibles incluent tous les hébergements WordPress (WP Engine, Kinsta, etc.) et l'outillage utilise des scripts Node.js et PHP locaux. Pour les boutiques, elle lit `references/store.md` ; pour les applications web, `references/web-app.md`. Les phases sont verrouillées : une nouvelle phase ne commence qu'après validation de la porte de sortie précédente par le client.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/auceps-dev-team/wp-claude-skills/tree/HEAD/skills/wp-site-build

Installed? Explore more Image skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Construire un site WordPress, de bout en bout

Pourquoi cette méthode existe

Un agent conçoit mal quand sa boucle de rétroaction est lente. Positionner une page dans WordPress coûte trois à cinq minutes par itération — composer, enregistrer, sérialiser, purger, recharger, regarder. En HTML local avec un serveur de développement, la même boucle prend cinq secondes, et la qualité du design suit le nombre d'itérations bien plus fidèlement que n'importe quelle instruction esthétique.

La seconde moitié est une contrainte de livraison : le client modifie le site sans écrire de code. C'est ce qui interdit les blocs HTML bruts et le contenu appartenant aux templates — et cela contraint la conversion, jamais le dessin.

En une ligne : le design vit dans les fichiers, pas dans le contenu des pages. WordPress reçoit un thème fini, pas des instructions de mise en page.

Les deux règles qui viennent en premier

Règle 0 — dessiner la phase 2 comme si la phase 4 n'existait pas. Aucune contrainte de conversion n'entre dans la maquette. Anticiper « pas de core/html » en dessinant supprime silencieusement la profondeur, les chevauchements et l'objet central ; le résultat se convertit parfaitement et ne plaît à personne.

Règle 0′ — aucune liberté esthétique ne quitte la référence. Avec une référence, un modèle dérive vers son propre style maison : beige chaud là où la référence est blanc froid, une police sérif caractérielle là où elle a une sans-sérif, un accent qu'elle n'a jamais eu. Sept invariants de registre sont lus sur la référence et reproduits ; en changer un est une question pour le client, posée avant de coder. Les invariants, la porte du registre et le script de mesure se trouvent dans references/register.md.

Les dix règles

Chacune vient d'une erreur qui a réellement été commise.

  1. Exiger une référence visuelle. Sans elle, la production régresse vers le centre statistique : police neutre, dégradé violet, page blanche.
  2. Pas de maquette sans photos réelles. Une boîte grise ressemble à une image cassée.
  3. Rien n'arrive en production WordPress avant deux approbations du client : la maquette, puis le plan de déploiement.
  4. La page d'accueil est une page, jamais un template — front-page.html contient l'en-tête, post-content, le pied de page.
  5. Zéro bloc core/html. Composer avec des groupes, titres, paragraphes, images.
  6. Les images vivent dans la médiathèque, avec un id sur chaque core/image.
  7. Les variantes interactives sont toutes dans la page ; le script bascule une classe.
  8. Aucun thème tiers sous le design.
  9. Valider dans l'éditeur, pas en front-end — une page peut s'afficher parfaitement et être inutilisable dans Gutenberg.
  10. La fidélité pixel est mesurée, pas estimée : styles calculés et géométrie, sélecteur par sélecteur.

Phases et leurs portes

Ne commencez pas une phase tant que la porte précédente n'est pas franchie.

PhaseQuiPorte de sortie
0 · Espace de travailAgentProjet dans le dossier de travail de l'utilisateur, accès en écriture testé
1 · BriefClientAnalyse de la référence, palette et typographie issues de la référence, liste « ce que j'ajoute »
2 · MaquetteItératifPage d'accueil en HTML, porte du registre passée, approbation du client
3 · Ensemble de pagesAgentChaque page assemblée à partir d'une seule source d'en-tête/pied
4 · Thème à blocs + stagingAgentThème construit ; WordPress local configuré par des outils reproductibles ; portes 1 à 5 passées en staging
5 · DéploiementAgent, après approbation du plan par le clientSauvegarde hors de la racine web, puis les mêmes outils exécutés en production
6 · AcceptationAgentPortes 1 à 5 passées en production, ou retour en phase 4

Phases 0 à 3 et plan de déploiement : references/phases.md. Conversion HTML vers blocs : references/block-conversion.md. Les cinq portes avec leur code : references/acceptance.md.

Le staging est local, et chaque changement est un outil. Le contenu et la configuration sont écrits par des scripts PHP idempotents (tools/install-site.php, tools/configure-*.php) exécutés avec la CLI PHP contre une copie locale, jamais saisis dans wp-admin. Les mêmes scripts sont rejoués en production lors du déploiement, et en rejouer un deux fois ne change rien — c'est vérifié, pas supposé.

Choisir la branche

La méthode est la même pour chaque site ; ce qui change, c'est la phase 4 et au-delà.

SiteCe qui changeÀ lire
VitrinePages, formulaires (Contact Form 7 + Flamingo), pages légalesce fichier et les phases
BoutiqueTemplates de blocs WooCommerce, import de catalogue, filtres de produits, blocs panier/validation, consentement, paiements, newsletter, confirmation de commandereferences/store.md
Application webTypes de publication personnalisés, rôles, REST, blocs dynamiques, flux de compte — la maquette pilote toujours chaque écran publicreferences/web-app.md

references/store.md est mesuré sur une construction réelle (WooCommerce 11.2.2, validation en blocs, thème à blocs). references/web-app.md ne l'est pas : il le dit, et redirige vers les compétences qui le sont.

Les faits appartiennent au client

La maquette invente le contenu rédactionnel à partir du brief ; elle n'invente jamais les faits. Avis, notes, nombre de clients, logos de presse, délais de livraison, prix des services, clauses juridiques et identité de l'entreprise restent sous forme de placeholders visibles — à compléter pour ce que seul le client peut fournir, à vérifier pour ce qui a été lu sur l'ancien site et peut être obsolète. Un avis inventé franchit toutes les portes et est le seul défaut qui peut coûter cher au client sur le plan légal.

Dans les commentaires, messages de commit et rapports, indiquez quelles affirmations ont été mesurées (avec la date) et lesquelles ont été lues (avec la source).

Outillage

FichierQuand
scripts/serve.mjsPhase 2 — serveur statique sans dépendance, essaie le port suivant lorsqu'un est pris
scripts/assemble.mjsPhase 3 — construit chaque page à partir d'un <head>, d'un en-tête et d'un pied de page sources
scripts/fetch-fonts.mjsPhase 4 — auto-héberge Google Fonts : aucune requête vers Google depuis les visiteurs, rien à déclarer sous le RGPD
scripts/novamira.mjsPhase 5 — appelle une capacité Novamira via HTTP sans enregistrer de serveur MCP
assets/theme-skeleton/Phase 4 — thème à blocs minimal : theme.json avec blockGap: 0px, editor.css, polices dans l'éditeur

Références

FichierLisez-le
references/register.mdAvant la phase 1, et avant de montrer toute maquette
references/phases.mdPhases 0 à 3, puis la séquence de déploiement de la phase 5
references/block-conversion.mdPendant la phase 4, à chaque fois
references/acceptance.mdPhases 4 et 6 — les cinq portes et l'hygiène de mesure
references/store.mdTout site WooCommerce
references/web-app.mdAdhésion, réservation, tableaux de bord, tout ce qui implique des utilisateurs connectés travaillant
references/pitfalls.mdDès qu'un symptôme vous surprend

Compétences connexes : wp-theme-block-fse pour theme.json et templates, wp-design-system pour les tokens, wp-woocommerce pour les hooks et HPOS, wp-deploy pour les migrations, wp-plugin-architecture et wp-blocks-gutenberg pour le code applicatif, wp-accessibility et wp-performance avant l'acceptation.

Skills associés