{"id":50763310,"url":"https://github.com/wpformation/wpf-lab","last_synced_at":"2026-06-11T12:02:40.267Z","repository":{"id":359286670,"uuid":"1245055139","full_name":"wpformation/wpf-lab","owner":"wpformation","description":"Benchmark WordPress x Claude Code : 7 methodes pour creer une page WP en 2026, evaluees sur test.wpformation.com. Plugin wpf-lab inclus (11 blocs PHP custom autoGenerateControl WP 7.0, zero JS, zero build). Article : wpformation.com/creer-page-wordpress-claude-code/","archived":false,"fork":false,"pushed_at":"2026-05-21T06:57:09.000Z","size":6804,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-21T13:45:16.206Z","etag":null,"topics":["astra-theme","autogeneratecontrol","benchmark","claude-code","gutenberg","gutenberg-blocks","php","spectra","wordpress","wordpress-plugin","wpformation"],"latest_commit_sha":null,"homepage":"https://wpformation.com/creer-page-wordpress-claude-code/","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wpformation.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-20T21:37:33.000Z","updated_at":"2026-05-21T09:06:55.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/wpformation/wpf-lab","commit_stats":null,"previous_names":["wpformation/wpf-lab-5-methodes-wp-claude-code"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/wpformation/wpf-lab","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wpformation%2Fwpf-lab","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wpformation%2Fwpf-lab/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wpformation%2Fwpf-lab/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wpformation%2Fwpf-lab/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wpformation","download_url":"https://codeload.github.com/wpformation/wpf-lab/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wpformation%2Fwpf-lab/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34197394,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-11T02:00:06.485Z","response_time":57,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["astra-theme","autogeneratecontrol","benchmark","claude-code","gutenberg","gutenberg-blocks","php","spectra","wordpress","wordpress-plugin","wpformation"],"created_at":"2026-06-11T12:02:37.003Z","updated_at":"2026-06-11T12:02:40.262Z","avatar_url":"https://github.com/wpformation.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# WPF Lab — Benchmark WordPress × Claude Code\n\n\u003e Repo de référence du **lab d'évaluation comparative** des 7 façons de créer une page WordPress en 2026, joué sur `test.wpformation.com` avec Claude Code.\n\n**Article complet** : \u003chttps://wpformation.com/creer-page-wordpress-claude-code/\u003e\n\n---\n\n## De 5 à 7 méthodes — historique du repo\n\nCe repo a démarré en **mai 2026, session S4**, avec 5 méthodes testées et **M·02 (Gutenberg + CSS personnalisé via Spectra)** déclaré gagnant.\n\nEn **session S6 (21 mai 2026)**, deux nouvelles méthodes ont été ajoutées :\n\n- **M·06** — Gutenberg pur + CSS embarqué dans un seul bloc `core/html` (zéro plugin)\n- **M·07** — Blocs PHP custom via plugin `wpf-lab` et pattern **PHP-only block registration** WordPress 7.0 (`supports.autoRegister: true`, zéro JS, zéro build)\n\n**Le vainqueur a changé** : **M·07 — 30/30 brut, 37,5/37,5 pondéré**. M·02 reste cité comme **la voie historique** (importante pour les sites legacy), mais surpassée pour toute refonte 2026.\n\n\u003e **Note de transparence (2026-05-27)** : la version initiale de ce repo et de l'article WPFormation nommait ce pattern `autoGenerateControl` et le présentait comme un flag à poser sur chaque attribut. **Faux.** Le vrai mécanisme est `supports.autoRegister: true` au niveau du bloc (l'éditeur Gutenberg dérive automatiquement les contrôles sidebar du `type` de chaque attribut). Le plugin a toujours tourné correctement parce que `autoRegister` était déjà posé en parallèle ; WordPress ignorait silencieusement la clé inconnue. Corrigé en v1.4.0. Source officielle : [PHP-only block registration](https://make.wordpress.org/core/2026/03/03/php-only-block-registration/) (dev note Miguel Fonseca, 3 mars 2026, ticket Trac [#64639](https://core.trac.wordpress.org/ticket/64639), implémentation [@priethor](https://profiles.wordpress.org/priethor/)).\n\n---\n\n## Les 7 méthodes en compétition\n\n| # | Méthode | Score | Démo live |\n|---|---|---|---|\n| **★1** | **M·07 — Blocs PHP custom (`supports.autoRegister` WP 7.0)** | **30/30** | \u003chttps://test.wpformation.com/methode-blocs-php-custom/\u003e |\n| 2 | M·06 — Gutenberg pur + CSS dans core/html | 26/30 | \u003chttps://test.wpformation.com/methode-gutenberg-pur/\u003e |\n| 3 | M·02 — Gutenberg + CSS perso (voie historique) | 24/30 | \u003chttps://test.wpformation.com/methode-wpformation/\u003e |\n| 4 | M·01 — Gutenberg natif (baseline) | 25/30 | \u003chttps://test.wpformation.com/accueil-gutenberg-natif/\u003e |\n| 5 | M·04 — HTML multi-blocs | 22/30 | \u003chttps://test.wpformation.com/methode-html-multiblocs/\u003e |\n| 6 | M·05 — Spectra Pro | 20/30 | \u003chttps://test.wpformation.com/methode-spectra-pro/\u003e |\n| 6 | M·03 — HTML monobloc | 19/30 | \u003chttps://test.wpformation.com/methode-html-monobloc/\u003e |\n\nHUB : \u003chttps://test.wpformation.com/\u003e\n\n---\n\n## Structure du repo\n\n```\n.\n├── README.md\n├── plugin-wpf-lab/           ← Le plugin M·07 (11 blocs PHP custom, GPL-2.0+)\n├── docs-s6/                  ← Matrice 7 méthodes, note rédacteur, recap S6\n├── pages-v3-s6/              ← Markups Gutenberg des 7 pages\n├── scripts-s6/               ← Scripts de déploiement + footers + wow CSS\n├── captures-s6/              ← Captures clés desktop M1-M7 + zooms M·07 wow\n└── (artefacts S4 historiques : css-lab-methode-2.css, markup-methode-2.html…)\n```\n\n---\n\n## Le plugin wpf-lab en bref\n\n11 blocs Gutenberg PHP custom, **zéro JavaScript**, grâce à WordPress 7.0 + pattern **PHP-only block registration** (`supports.autoRegister: true`). Doc complète : [plugin-wpf-lab/README.md](plugin-wpf-lab/README.md).\n\n**Usage minimal** :\n\n```html\n\u003c!-- wp:wpf/lab-utility /--\u003e\n\u003c!-- wp:wpf/lab-localnav /--\u003e\n\u003c!-- wp:wpf/lab-banner /--\u003e\n\u003c!-- wp:wpf/lab-hero /--\u003e\n\u003c!-- wp:wpf/lab-stats /--\u003e\n\u003c!-- wp:wpf/lab-why /--\u003e\n\u003c!-- wp:wpf/lab-pillars /--\u003e\n\u003c!-- wp:wpf/lab-feature-twocol /--\u003e\n\u003c!-- wp:wpf/lab-methods-table /--\u003e\n\u003c!-- wp:wpf/lab-team /--\u003e\n\u003c!-- wp:wpf/lab-cta-final /--\u003e\n```\n\n11 lignes, ~3 KB. Tout le design est dans le plugin (versionné Git).\n\n---\n\n## Stack technique\n\n- **WordPress** 7.0+ (pour `supports.autoRegister` — PHP-only block registration)\n- **Thème** Astra (free)\n- **Plugin Spectra** (free) — requis pour M·02 et M·04 (CSS page-level via meta)\n- **Plugin Spectra Pro** — requis pour M·05\n- **Plugin wpf-lab** (ce repo, dossier `plugin-wpf-lab/`) — requis pour M·07\n- **Hébergeur** o2switch (rate-limit Tiger Protect → sleep 18s + retry 22s × 12 sur 429)\n\n---\n\n## Licence\n\n- **Plugin `wpf-lab`** : GPL-2.0-or-later (voir [plugin-wpf-lab/LICENSE](plugin-wpf-lab/LICENSE))\n- **Reste du repo** (docs, scripts, captures) : MIT (héritage S4)\n\n---\n\n## Liens\n\n- **Article WPFormation** : \u003chttps://wpformation.com/creer-page-wordpress-claude-code/\u003e\n- **Site de démo** : \u003chttps://test.wpformation.com\u003e\n- **Plugin** : [plugin-wpf-lab/](plugin-wpf-lab/)\n- **Matrice de scoring 7 méthodes** : [docs-s6/matrice-finale-7-methodes-2026-05-21-S6.md](docs-s6/matrice-finale-7-methodes-2026-05-21-S6.md)\n- **Note pour le rédacteur** : [docs-s6/note-pour-redacteur-wpformation-S6-FINALE.md](docs-s6/note-pour-redacteur-wpformation-S6-FINALE.md)\n- **Recap session S6** : [docs-s6/session-6-recap-2026-05-21.md](docs-s6/session-6-recap-2026-05-21.md)\n- **Source officielle WordPress 7.0** : [dev note PHP-only block registration](https://make.wordpress.org/core/2026/03/03/php-only-block-registration/) (Miguel Fonseca, 3 mars 2026, ticket Trac [#64639](https://core.trac.wordpress.org/ticket/64639))\n\n---\n\n## Crédits\n\n- **Conception, benchmark, design Direction B** : Fabrice Ducarme — [WPFormation](https://wpformation.com)\n- **Co-développement** : Claude Code (Anthropic Opus 4.7)\n- **Pattern PHP-only block registration (`autoRegister`)** : [Miguel Fonseca](https://profiles.wordpress.org/mfonseca/), dev note officielle [du 3 mars 2026](https://make.wordpress.org/core/2026/03/03/php-only-block-registration/), implémentation par [@priethor](https://profiles.wordpress.org/priethor/), ticket Trac [#64639](https://core.trac.wordpress.org/ticket/64639). Disponible depuis WordPress 7.0.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwpformation%2Fwpf-lab","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwpformation%2Fwpf-lab","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwpformation%2Fwpf-lab/lists"}