Vloženie reCaptcha iba na stránku s kontaktným formulárom Contact form 7

Obtiažnosť:
Začiatočník
Pokročilý
Skúsený
Expert

Contact form 7 je perfektný plugin na vytvorenie kontaktných formulárov pre WordPress. Má integráciu reCaptcha. Chybou však je, že CF7 vkladá reCaptcha na každú stránku, čo je zbytočné. Potrebujeme mať ochranu pred botmi iba na stránkach s formulárom.

Keďže kontaktné formuláre sú vkladané pomocou shortcode, môžme využiť funkciu WordPress has_shortcode().

add_action( 'wp_print_scripts', function () {
	// nastavenie globálnej premennej $post
	global $post;
	// kontrola, či objekt je triedy WP_Post a ak neobsahuje shortkód CF7, deregistrácia skriptov reCaptcha
	if ( is_a( $post, 'WP_Post' ) && !has_shortcode( $post->post_content, 'contact-form-7' ) ) {
		wp_dequeue_script( 'google-recaptcha' );
		wp_dequeue_script( 'wpcf7-recaptcha' );
	}
} );

Tento snippet môžte pridať do functions.php, ale správne je vytvoriť si špecifický plugin pre túto úpravu. Viac info nájdete tu.

0 0 votes
Hodnotenie článku
Autor
Navigácia
Odoberať
Upozorniť na
guest
0 Komentáre
Inline Feedbacks
View all comments