IMPORTANTE: Actualización del código desde la versión 5.2
La versión 5.2 de Contact Form 7 sufrio un pequeño cambio en el codigo para implentar el recaptcha de google. por ese motivo hay que añadir una linea más para desactivar otro script.
Hay que añadir esta línea dentro del if debajo del otro «wp_dequeue_script».
wp_dequeue_script('wpcf7-recaptcha');
A continuación tenéis ya los snippet actualizados para copiar y pegar directamente en vuestro functions.php
Código para ocultar el widget de reCaptcha (actualizado)
if ( !function_exists('curso_cf7_load_recaptcha_v3')) :
function curso_cf7_load_recaptcha_v3(){
if ( !is_page('contacto') ) {
wp_dequeue_script('google-recaptcha');
wp_dequeue_script('wpcf7-recaptcha');
}
}
add_action( 'wp_enqueue_scripts', 'curso_cf7_load_recaptcha_v3', 30, 0 );
endif;
Código para ocultar reCaptcha v3 con multiples formularios (actualizado)
Añade este código si tienes varias páginas con formulario de contacto. Tienes que modificar la línea 3 donde pone «contacto», «presupusto» y reemplazarlo por el slug de vuestras páginas web.
if ( !function_exists('curso_cf7_load_recaptcha_v3')) :
function curso_cf7_load_recaptcha_v3(){
if ( !is_page(array('contacto', 'presupuesto')) ) {
wp_dequeue_script('google-recaptcha');
wp_dequeue_script('wpcf7-recaptcha');
}
}
add_action( 'wp_enqueue_scripts', 'curso_cf7_load_recaptcha_v3', 30, 0 );
endif;
NUEVO: Código para ocultar reCaptcha v3 en móviles
En caso de tener una página web tipo ONE-PAGE quizá te interese ocultar el reCaptcha en la versión móvil para eso utiliza este código para ocultarlo cuando este en dispositivos móviles.
if ( !function_exists('curso_cf7_load_recaptcha_v3')) :
function curso_cf7_load_recaptcha_v3(){
if ( wp_is_mobile() ) {
wp_dequeue_script('google-recaptcha');
wp_dequeue_script('wpcf7-recaptcha');
}
}
add_action( 'wp_enqueue_scripts', 'curso_cf7_load_recaptcha_v3', 30, 0 );
endif;
Maravilloso. para todos los gustos y necesidades. Gracias Samuel.
Hola muchas gracias por la ayuda, pude agregar el captcha pero no me funciona el script, se sigue viendo en todos lados. No faltaría agregar la función ‘curso_cf7_load_recaptcha_v3’ a algún lado? Saludos
Hola Nicolas, el código lo tienes que añadir en el functions.php del theme y con la función add_action ya se encarga de ejecutar la función «curso_cf7_load_recaptcha_v3» donde corresponde.
Contact Form 7 en la versión 5.2 cambio el código de implementar el recaptcha, por ese motivo hay que añadir una línea más en el código.
En la entrada del blog ya la tienes actualizada, es la línea: wp_dequeue_script(‘wpcf7-recaptcha’);
Hola, buen video.
Pero coloco el código para ocultar el widget de reCaptcha y se muestre solo en contacto, y en todas las demás páginas me aparece en la parte superior parte del texto del código.
Gracias de antemano.
Puede deberse a varios problemas.
1. codificación del fichero.
2. uso de comillas simples y dobles.
3. introducción del código fuera de las etiquetas de PHP
4. versión de php.
5. incompatibilidad con otros plugins o theme.
Hola!!
Muchas gracias por el video, super interesante.
Dos preguntas, he integrado esto en dos web y en una aparece en icono azul a la derecha abajo, y en el otro no aparece nada. Sabes por que puede ser??
Otra pregunta, en el script que poner para integrar en el funtions.php. En la priemra fila aparece: (‘curso_cf7_load_recaptcha_v3’)) : ¿Esto hay que cambiarlo??
Muchas gracias por todo.
Un saludo
En la que no te sale puede que tengas un problema de javascript en esa web, o que hayas implementado el condigo en el function.php para que no se muestre.
Lo que aparece en el functions.php no hay que cambiarlo.
Buenos días.
Primero que nada gracias por la explicación, pero tengo varias preguntas.
Para páginas con Woocommer,
¿Es necesario activarlo en la página donde se llena el registro y el carrito de compra?
En las página del detalle de los productos, tengo un formulario por que hay una consulta con ese producto, ¿como agrego esas páginas ya que no tengo un Slug fijo?
Y si tengo en el footer del todo el site un formulario de Suscripción, tengo entonces que activarlo en todo el site?
Hola Verónica,
Para woocommerce no sirve este método. Este tutorial es para el plugin Contact Form 7.
Si tienes un formulario de CF7 en el footer de todo el sitio. No tienes que añadir el código para bloquearlo. Ya que se tiene que mostrar en todas las URLs.
gracias
ing. como se llega a esa pantalla que no logro entender.
Vuelve a ver el videotutorial.
Fantástico, Samuel! Muy agradecido.
Hola, y para que salga el icono del reCaptcha en los artículos del blog, como seria?
He colocado:
if ( !is_page(array(‘contacto’, ‘blog’)) ) {
pero no aparece el icono!!
espero tu comentario, saludos y gracias!!
Este tutorial no sirve para bloquear el SPAM en los comentarios de WordPress. Es necesario otro plugin.