Utiliser Akismet avec les formulaires de contact
Akismet a été conçu à l’origine pour filtrer le spam des commentaires de blog, mais il peut faire de même pour les formulaires de contact. Si vous développez un formulaire de contact que vous souhaitez intégrer à Akismet, suivez les instructions ci-dessous.
Commencez par lire la documentation du point de terminaison API comment-check, puis appliquez les modifications de paramètre suivantes à votre implémentation :
permalink : utilisez l’URL du formulaire de contact.
comment_type : utilisez contact_form
comment_author : si votre formulaire de contact comporte un champ correspondant au nom complet de la personne qui le remplit, utilisez cette valeur ici.
comment_author_email : si votre formulaire de contact comporte un champ unique pour l’adresse e-mail de l’utilisateur, utilisez cette valeur ici.
comment_author_url : si votre formulaire comporte un champ unique permettant à l’utilisateur de saisir son URL, utilisez-la ici.
Pour chaque autre champ de votre formulaire contenant du texte libre saisi par l’utilisateur, envoyez-le en tant que paramètre distinct au format contact_form_field_fieldname, où fieldname est une version normalisée du libellé du champ. Par exemple, si vous avez un champ intitulé « Phone Number » et que l’utilisateur y saisit 1234567, envoyez contact_form_field_phone_number=1234567. Un champ intitulé « Where did you hear about us? » serait nommé contact_form_field_where_did_you_hear_about_us.
Si l’un des paramètres ne s’applique pas à votre formulaire, omettez-le entièrement plutôt que d’envoyer une valeur vide. Par exemple, s’il n’y a pas de champ e-mail, n’envoyez pas du tout le paramètre comment_author_email.
Important : n’incluez dans votre requête aucun contenu qui n’a pas été librement saisi par l’utilisateur. Par exemple, les sélections issues de menus déroulants et les libellés des cases cochées doivent être exclus de la requête Akismet.
Spams non détectés et faux positifs
Il est important que votre formulaire de contact permette d’envoyer à Akismet des signalements de spams non détectés et de faux positifs. Votre implémentation doit conserver la requête initialement envoyée au point de terminaison comment-check afin de pouvoir la réutiliser à cet effet.
Lorsqu’une soumission est signalée comme spam, renvoyez la requête comment-check d’origine, mais cette fois au point de terminaison submit-spam.
Lorsqu’une soumission est signalée comme faux positif, renvoyez la requête comment-check d’origine, mais cette fois au point de terminaison submit-ham.
Avant la mise en ligne
Avant de publier l’intégration Akismet de votre formulaire de contact, parcourez la liste de contrôle suivante :
☐ Votre formulaire de contact permet à l’utilisateur de spécifier sa clé API Akismet (si la clé n’est pas prédéfinie).
☐ Votre formulaire de contact vérifie qu’une clé API fournie par l’utilisateur est valide au moment de sa saisie, et uniquement à ce moment-là.
☐ Votre formulaire de contact inclut les métadonnées recommandées dans les requêtes Akismet, comme l’adresse IP, l’agent utilisateur, le référent et le permalien.
☐ Votre formulaire de contact inclut tous les champs dans lesquels l’utilisateur a saisi une valeur, envoyés sous la forme contact_form_field_[fieldname]
☐ Votre formulaire de contact n’envoie pas à Akismet de champs ne contenant pas de valeur saisie par l’utilisateur.
☐ Votre formulaire de contact permet de signaler des soumissions comme indésirable non détecté.
☐ Votre formulaire de contact permet de signaler des soumissions comme faux positifs.
Si tous ces points sont cochés, félicitations ! Votre intégration est prête à être mise en ligne.
