Module v2.3.0
Configurer Formulaires
Vos formulaires, composés depuis l'administration : les champs, les choix, le consentement. Le visiteur écrit, vous recevez un mail.
Ce qu'il fait
Composez vos formulaires depuis l'administration : les champs, leur ordre, ce qui est obligatoire, les choix proposés, la case de consentement. Le visiteur écrit, vous recevez un mail, il reçoit un accusé de réception. Rien n'est gardé des visiteurs : pour conserver les messages, y répondre et les classer, ajoutez la Boîte de réception. Contre les robots : un champ caché que seul un automate remplit, et un plafond de dix envois par quart d'heure et par adresse. Aucun test à passer pour le visiteur, et rien qui arrête une personne décidée à vous écrire à la main.
- Composez chaque formulaire : texte, texte long, email, téléphone, nombre, date, oui/non, choix unique (boutons), choix multiple (cases), consentement
- Plusieurs formulaires par site, chacun avec son emplacement : contact, devis, inscription…
- Le serveur ne retient que les champs que VOUS avez composés : rien d'inventé ne passe
- La case de consentement, obligatoire et sans valeur par défaut, avec son lien vers votre politique
- Le mail de notification et l'accusé de réception partent tout seuls
- Les thèmes habillent chaque type de champ par sa propre classe, jamais un menu déroulant
Où le trouver
Les écrans que ce module ajoute à l'administration, une fois activé.
-
Formulaires
/admin/formulaire/formulaires
Ses droits
Ce que chaque rôle peut faire par défaut. Modifiable rôle par rôle depuis l'administration.
| Droit | Clé | Administrateur | Éditeur |
|---|---|---|---|
| Composer les formulaires du site | formulaire.manage |
✓ | — |
Ce qu'il suppose
Le désactiver arrêterait aussi :
Piloter par une IA
Ce que ce module sait faire quand on le lui demande en langage naturel, et ce que chaque action engage.
-
formulaireslecture seuleLes formulaires composés du site : emplacement (slug), titre, actif ou non, adresse du site qui reçoit les messages, texte du bouton, et pour chaque champ son libellé, son type (texte, long, email, tel, nombre, date, oui-non, choix, choix-multiple, consentement), s'il est obligatoire, ses choix. Ne rend aucun message de visiteur : le module n'en garde pas. Lecture seule. 50 au plus par appel, `suite` donne l'offset suivant.
« quels champs y a-t-il dans mon formulaire de contact ? » « quels formulaires mon site propose-t-il ? »
Ses points de branchement
Pour greffer du code sans toucher au module : ce qu'il annonce, et ce qu'il écoute.
Ce qu'il annonce 2
formulaire.recu- Filtre : une demande vérifiée arrive (int $id, array $demande) — un module qui la garde rend son identifiant. $demande porte `definition` (le snapshot des champs à l'envoi).
formulaire.juger- Filtre : faut-il mettre cette demande de côté ? (string $raison, array $demande), 2026-10-11. $raison arrive vide, ou déjà posée par le kit (envoi trop rapide, adresse web dans le nom, expéditeur du domaine du site) ; un module ou le THÈME (les endpoints chargent ses crochets) rend une raison non vide pour la ranger en spam, sans e-mail. On juge le message, jamais le messager : pas d'IP, de pays ni de « êtes-vous humain ».
Ce qu'il écoute 2
emails.catalogue- priorité 45
emails.apercu- priorité 10
Ses prises front
Les morceaux de page que ce module fournit, et les classes qu'ils posent. Un thème les habille par ces classes : il ne recopie pas le balisage, sinon il rate les corrections des versions suivantes.
views/formulaire.php
23 classes
s-forms-form-actionss-form-aides-form-champs-form-champ--choixs-form-champ--consentements-form-champ--demis-form-champ--emails-form-champ--pleins-form-coches-form-consentements-form-consentement-liens-form-erreurs-form-groupes-form-hps-form-inputs-form-labels-form-obligatoires-form-options-form-option-textes-form-submits-form-success-form-textarea
Ses données
Les tables que ce module crée. Désactiver un module ne les efface pas : ses données restent en base et reviennent s'il est réactivé.
Les tables 1
formulaires