« On ne peut pas payer d’abonnement, mais on peut donner du temps le week-end. » Cette phrase, prononcée en assemblée générale par le trésorier d’un club de tir à l’arc, résume tout le cadrage du projet : le site Wix arrivait en fin d’offre gratuite, l’association refusait de payer un abonnement mensuel récurrent, et personne au sein du bureau ne maîtrisait un framework front moderne. Un seul membre, bénévole et développeur amateur, s’est proposé pour reconstruire le site en dehors de Wix.
La contrainte de budget nul a orienté toutes les décisions techniques : un hébergement mutualisé chez o2switch, choisi pour son tarif fixe annuel modeste, héberge un WordPress qui sert uniquement de back-office de contenu, exposé via l’API REST native, sans extension payante.
Pourquoi garder WordPress plutôt qu’un simple site statique généré à la main
L’association avait des membres qui devaient pouvoir modifier le contenu (horaires d’entraînement, résultats de compétition, actualités du club) sans toucher au code. Un site purement statique, écrit à la main en HTML, aurait nécessité de repasser par le bénévole développeur à chaque changement. WordPress, même mutualisé et sans extension coûteuse, offre un éditeur de contenu que n’importe quel membre du bureau peut prendre en main en une demi-heure.
Un front statique généré sans outil de build lourd

Faute de temps pour apprendre un framework complet, le bénévole a opté pour un générateur minimal, un script Node.js d’une centaine de lignes qui appelle l’API REST de WordPress et produit des fichiers HTML statiques, hébergés gratuitement sur les pages du dépôt Git du club :
const reponse = await fetch('https://api.club-tir.fr/wp-json/wp/v2/posts?per_page=20');
const articles = await reponse.json();
for (const article of articles) {
const html = genererPageHtml(article.title.rendered, article.content.rendered);
fs.writeFileSync(`dist/actualites/${article.slug}.html`, html);
}
Ce script tourne une fois par semaine via une tâche planifiée gratuite sur la plateforme d’hébergement du dépôt, ce qui suffit largement pour un club dont le contenu change au rythme des entraînements, pas en temps réel.
Les compromis assumés d’un budget nul
- Pas de rafraîchissement instantané du site après publication : le contenu attend la prochaine exécution planifiée, au pire sept jours.
- Pas de recherche interne au site, jugée superflue pour un site de quelques dizaines de pages.
- Pas de certificat de performance avancé : le site reste simple, mais largement suffisant pour un public local.
Ce que cette migration a réellement coûté en temps
Le bénévole estime à six week-ends le temps nécessaire pour migrer l’intégralité du contenu Wix, comprendre l’API REST de WordPress et écrire le script de génération statique. Ce temps aurait pu être réduit avec un générateur de site existant, mais l’apprentissage d’un nouvel outil aurait pris tout autant de temps qu’écrire un script minimal adapté exactement au besoin du club.
Un projet à budget nul ne cherche pas la solution la plus élégante, il cherche celle que quelqu’un peut réellement maintenir seul, un dimanche soir.
Ce que l’hébergement mutualisé a permis malgré tout
Contrairement à une idée reçue, un hébergement mutualisé d’entrée de gamme suffit largement à faire tourner WordPress pour ce seul usage de back-office de contenu, sans front public directement servi depuis cet hébergement. La charge réelle se limite aux quelques appels API déclenchés une fois par semaine par le script de génération, très loin des limites de ressources d’une offre mutualisée standard. Le club a d’ailleurs conservé une marge confortable pour ajouter, plus tard, une page supplémentaire ou un nouveau type de contenu sans craindre de saturer l’hébergement.
Ce que d’autres associations pourraient reprendre telles quelles
Le script de génération statique, écrit spécifiquement pour ce club, reste suffisamment générique pour être adapté par une autre association disposant d’un profil similaire : peu de contenu, un rythme de publication lent, et un bénévole capable de lire un script simple sans être développeur professionnel. Le bureau du club a d’ailleurs proposé de partager le code avec une association voisine confrontée exactement au même dilemme budgétaire.
Pour aller plus loin
Cette architecture minimaliste ne conviendrait pas à un site à fort trafic ou à mise à jour fréquente, mais elle correspond exactement au besoin d’un club associatif dont le renouvellement du contenu se compte en semaines, pas en heures. WordPress reste l’outil de saisie, l’API REST fait le pont, et un script maison suffit à publier sans dépenser un euro.