Mars 2021 : l’éditeur de site complet n’existe toujours que via le plugin Gutenberg, activé en mode expérimental, et le cœur de WordPress n’en propose encore qu’un aperçu partiel à travers les widgets par blocs de la version 5.8, pas encore sortie. C’est pourtant sur cette base que l’agence a accepté de livrer son premier site associatif construit entièrement dans le Site Editor, pour une petite structure caritative locale au budget très contraint.
Le brief tenait en une phrase : un site simple, avec un formulaire de don en ligne, sans jamais dépasser dix heures de développement facturées. Impossible, avec un tel budget, d’envisager WooCommerce et son écosystème d’extensions de paiement complémentaires. L’éditeur de site expérimental, justement, offrait une piste : construire un template dédié, léger, sans dépendance lourde.
Pourquoi un template dédié plutôt qu’une page classique
Sur un thème bloc, un template personnalisé peut être assigné à une page spécifique depuis l’écran d’édition, indépendamment du template générique utilisé pour le reste du site. L’intérêt, ici, était de sortir la page de don de la structure habituelle du site (en-tête complet, menu de navigation étendu, pied de page chargé de liens), pour ne conserver qu’un minimum d’éléments distrayants autour du formulaire.
Cette approche, à l’époque encore peu documentée, s’appuie sur la fonctionnalité de templates personnalisés du Site Editor : un simple fichier HTML placé dans le dossier block-templates du thème, déclaré ensuite comme option disponible dans le sélecteur de template de la page.
Brancher Stripe sans extension de paiement
Le choix technique retenu a été d’intégrer directement Stripe Checkout, sans passer par une extension de don ou de paiement générique, dont les tarifs mensuels auraient rapidement dépassé le budget global du projet. Un bloc HTML personnalisé, inséré dans le template dédié, charge le script Stripe et déclenche une session de paiement pré-configurée.

<script src="https://js.stripe.com/v3/"></script>
<script>
const stripe = Stripe('pk_live_XXXXXXXXXXXX');
document.getElementById('bouton-don').addEventListener('click', async () => {
const response = await fetch('/wp-json/wpm/v1/creer-session-don', { method: 'POST' });
const session = await response.json();
stripe.redirectToCheckout({ sessionId: session.id });
});
</script>
Côté serveur, une route REST personnalisée, déclarée via register_rest_route(), crée la session Stripe Checkout avec un montant configurable, avant de rediriger le donateur vers la page de paiement hébergée par Stripe lui-même. Aucune donnée bancaire ne transite jamais par les serveurs de l’association.
Les limites rencontrées avec un éditeur encore jeune
Construire ce template dans un éditeur de site encore expérimental n’a pas été sans accroc. Le panneau de réglages du bloc HTML personnalisé provoquait parfois une perte du contenu collé, obligeant à ressaisir le script à chaque fermeture intempestive de l’éditeur. La solution retenue a été de rédiger le script complet dans un fichier séparé du thème, puis de l’enregistrer via wp_enqueue_script(), en ne laissant dans le bloc HTML que le strict minimum de balisage.
- Un bouton de don unique, sans champ de montant libre, pour simplifier le tunnel au maximum.
- Un script externe enregistré proprement, plutôt que collé directement dans l’éditeur instable.
- Un template dédié, allégé de l’en-tête et du pied de page habituels du site.
Ce que ce projet n’a pas cherché à résoudre
Ce projet ne traite volontairement pas la génération de reçus fiscaux, qui suppose une intégration bien plus poussée avec un outil de comptabilité associative, hors du périmètre de ce premier chantier. Il ne s’appuie pas non plus sur WooCommerce, écarté dès le départ pour des raisons de coût et de complexité disproportionnée face au besoin réel.
Sur les projets à budget serré, la meilleure décision technique est souvent de refuser la solution la plus connue : WooCommerce aurait résolu le problème, mais à un coût que cette association ne pouvait pas assumer sur la durée.
Ce que ce premier projet a confirmé
Livrer un site réel, même minimaliste, sur un éditeur encore expérimental impose une discipline particulière : tester chaque manipulation deux fois, documenter les comportements instables rencontrés, et prévoir une marge de temps pour les imprévus liés à l’outil lui-même plutôt qu’au projet. Le budget de dix heures a finalement été tenu, avec huit heures facturées, mais uniquement grâce à un périmètre volontairement restreint.
Notre verdict
L’éditeur de site expérimental permet déjà, en mars 2021, de livrer des projets réels à petit budget, à condition d’accepter ses instabilités et de garder un périmètre fonctionnel très resserré. Pour cette association, un template dédié et un bouton Stripe suffisent largement là où un site plus classique aurait nécessité une extension de paiement complète, hors de portée financière.