Home » WordPress » Comment charger le script recaptcha avec Contact Form 7 uniquement lorsque cela est nécessaire ?

Comment charger le script recaptcha avec Contact Form 7 uniquement lorsque cela est nécessaire ?

Utilisez-vous le plugin Contact Form 7 avec recaptcha dans votre site Web WordPress ? Si la réponse est oui, vous avez probablement remarqué le badge Google recaptcha sur chaque page de votre site.

Le dernier Recaptcha de Google est génial – il fait un superbe travail en sécurisant votre email contre le spam que vous obtiendriez à partir de formulaires de contact de site web. Mais charger le script recaptcha sur chaque page (même si elle ne contient pas de formulaire de contact) n’a pas beaucoup de sens, et cela affecte la vitesse de chargement du site.

Vous trouverez donc ici une solution simple mais efficace pour charger automatiquement le script recaptcha uniquement sur les pages où se trouve réellement un formulaire de contact.

Comment charger le script recaptcha pour Contact Form 7 uniquement sur les pages où le formulaire de contact est présent ?

Par défaut, Contact Form 7 charge le recaptcha sur chaque article ou page WordPress. Il affiche le badge recaptcha, et charge un script externe qui augmente le temps de chargement du site (pas de beaucoup, mais cela s’ajoute quand même).

Voici ce que vous devez faire pour l’éviter :

  • Ouvrez le panneau d’administration de WordPress, et allez dans Apparence >> Éditeur de thème.
  • Cliquez sur le fichier functions.php du thème, et ajoutez cette fonction à la fin du fichier :
add_action('wp_print_scripts', function () {
	global $post;
	if ( is_a( $post, 'WP_Post' ) && !has_shortcode( $post->post_content, 'contact-form-7') ) {
		wp_dequeue_script( 'google-recaptcha' );
		wp_dequeue_script( 'wpcf7-recaptcha' );
	}
});

Voici à quoi cela devrait ressembler :

How to load recaptcha script with Contact Form 7 only where necessary

N’oubliez pas d’enregistrer les modifications (cliquez sur le bouton  » Update File » ).

La fonction est assez simple et directe – elle vérifie si la page contient un shortcode Contact Form 7. Si le shortcode n’est pas trouvé, la fonction supprime le script Google recaptcha de la file d’attente des scripts.

Avez-vous trouvé ce tutoriel utile ?
N’oubliez pas de le partager !

Looking for reliable yet affordable WordPress hosting?
Hostinger is the way to go!

Get 10% OFF by using code IMAKEITWORK