Formes de gravité est l'un des constructeurs de formulaires les plus puissants pour WordPress.
Il est flexible, riche en fonctionnalités et s'intègre parfaitement à d'innombrables plugins.
Mais comme tout système de formulaires, il peut être utilisé à mauvais escient.
Un problème commun WordPress Les propriétaires de sites sont confrontés à les utilisateurs soumettent des liens ou des URL indésirables dans les champs de formulaire. Ces liens peuvent encombrer votre base de données, introduire des spams et, dans certains cas, constituer un danger pour la santé publique. risque de sécurité.
Heureusement, il suffit d'un petit bout de code pour que vous puissiez complètement bloquer la soumission de liens dans votre Formes de gravité champs-tout en permettant aux utilisateurs de saisir leur adresse électronique.
Dans ce guide, vous apprendrez, étape par étape, à.. :
- Installer et utiliser le Extraits de code plugin.
- Ajouter une fonction personnalisée qui empêche la soumission d'URL.
- Appliquer la validation à un formulaire spécifique et exclure le champ email.
- Gardez vos formulaires propres, sûrs et professionnels.
Pourquoi bloquer les liens dans Formes de gravité?
Il y a plusieurs raisons pour lesquelles vous pouvez vouloir empêcher la soumission de liens dans votre site web. Formes de gravité:
- Prévention du spam - Les robots et les spammeurs insèrent souvent des liens dans les formulaires dans l'espoir de promouvoir leurs sites web.
- Collecte de données propres - Si vous recueillez des commentaires, des enquêtes ou des avis de clients, vous ne voulez pas que des URL désordonnées encombrent vos entrées.
- Renforcement de la sécurité - Certains liens peuvent rediriger vers des sites malveillants, créant ainsi un risque inutile pour votre équipe ou les clients qui examinent les soumissions.
- Professionnalisme - La prévention des liens garantit que seul le contenu pertinent est saisi, ce qui permet de conserver des données cohérentes et fiables.
L'outil dont vous aurez besoin : Plugin Code Snippets
Au lieu de modifier le fichier functions.php
(qui est risqué et qui est réinitialisé lorsque vous mettez à jour votre thème), vous pouvez utiliser le fichier Extraits de code plugin.
Extraits de code est un plugin gratuit qui vous permet d'ajouter en toute sécurité du code PHP personnalisé à votre site Web. WordPress sans toucher aux fichiers centraux. Il fournit :
- Une interface propre pour l'ajout de snippets.
- La possibilité d'activer/désactiver les snippets sans les perdre.
- Pas besoin d'un thème enfant.
👉 Pour l'installer :
- Aller à Plugins → Ajouter un nouveau dans votre WordPress tableau de bord.
- Rechercher Extraits de code.
- Installez-le et activez-le.
Vous êtes maintenant prêt à ajouter votre code personnalisé.
Le code de l'extrait pour bloquer les liens dans Formes de gravité
Voici l'extrait exact dont vous aurez besoin. Il fonctionne sur Formulaire ID 9et bloque les liens dans tous les domaines sauf le champ Email (ID 2).
// Block URLs in ANY field of form ID 9 except the Email field (ID 2)
add_filter( 'gform_field_validation_9', 'block_urls_except_email', 10, 4 );
function block_urls_except_email( $result, $value, $form, $field ) {
// Skip validation for Email field
if ( $field->id == 2 ) {
return $result;
}
$nourl_pattern = '/https?:\/\/|www\.|[a-z0-9\-]+\.[a-z]{2,}/i';
// Recursive function to check arrays for URLs
$contains_url = function($val) use ($nourl_pattern, &$contains_url) {
if ( is_array($val) ) {
foreach ($val as $v) {
if ($contains_url($v)) return true;
}
return false;
}
return is_string($val) && preg_match($nourl_pattern, $val);
};
if ( $contains_url($value) ) {
$result['is_valid'] = false;
$result['message'] = 'Message cannot contain website addresses.';
}
return $result;
}
Comment fonctionne ce code
Voyons cela en détail :
add_filter( 'gform_field_validation_9', ... )
Cela signifie que Formes de gravité pour exécuter notre fonction de validation personnalisée sur le formulaire ID 9.
si ( $field->id == 2 )
Cela garantit que le champ Email (ID 2) est exclu, de sorte que les utilisateurs peuvent toujours soumettre des adresses électroniques.
$nourl_pattern
Cette expression régulière (regex) recherche tout motif ressemblant à une URL (http, https, www, ou des extensions de domaine telles que .com, .org, etc.)
$contains_url
Fonction récursive qui vérifie les tableaux ou les chaînes de caractères pour détecter les URL.
$result['is_valid'] = false ;
Si un lien est détecté, la validation du champ échouera et l'utilisateur verra le message d'erreur.
$result['message'] = "Le message ne peut pas contenir d'adresses de sites web" ;
Il s'agit du message d'erreur qui s'affiche lorsque quelqu'un tente de soumettre un lien.
Pas à pas : Ajouter l'extrait
- Aller à Snippets → Ajouter un nouveau dans votre WordPress tableau de bord.
- Donnez à votre extrait un nom descriptif, comme par exemple : "Bloquer les URL dans Gravity Form 9".
- Collez le code dans l'éditeur.
- Choisir Ne fonctionne que sur le front-end du site (important pour les soumissions de formulaires).
- Sauvegardez et activez le snippet.
C'est tout ! 🎉 Votre formulaire est maintenant protégé.
Tester votre formulaire Gravity
- Essayez de soumettre votre formulaire avec une réponse textuelle normale → ✅ Cela devrait fonctionner.
- Essayez d'ajouter une URL comme
http://example.com
→ ❌ Il doit déclencher l'erreur de validation. - Essayez d'entrer une adresse e-mail dans le champ e-mail → ✅ Cela devrait toujours être autorisé.
Cela permet de s'assurer que votre formulaire n'accepte que des données propres et utiles.
Réflexions finales
Blocage des liens dans Formes de gravité est une façon intelligente de protéger votre site web contre le spam, garder vos entrées propres et améliorer la sécurité.
L'utilisation de la Plugin Code Snippets permet de gérer facilement ce code sans modifier les fichiers de votre thème. Et l'extrait fourni ici est flexible : vous pouvez modifier l'élément ID du formulaire ou ID des champs exclus pour répondre à vos besoins.
👉 Now your Formes de gravité sont plus sûres, plus intelligentes et plus professionnelles.
Si ce guide vous a été utile, n'hésitez pas à J'aime, je partage et je m'abonne à notre contenu pour en savoir plus WordPress tutoriels, conseils et extraits. 🚀