Contact Form 7: ¿Redireccionar bajo una condición?

30 oct 2012, 17:42:49
Vistas: 17.7K
Votos: 1

Estoy realizando una encuesta usando el plugin "Contact Form 7". Quiero insertar una casilla de aceptación. SOLO si las personas marcan esta casilla y hacen clic en "enviar", deberían ser redirigidos a otra página, donde voy a pedir sus direcciones de correo electrónico.

Si no marcan la "aceptación", no debería haber redirección.

¿Cómo puedo hacer esto?

Ya intenté usar on_sent_ok: "location = ''" - PERO: Esto ignora si la casilla de aceptación está marcada o no.

0
Todas las respuestas a la pregunta 3
1

Encontré una respuesta por mí mismo:

Redireccionamiento sin condición Cuando usas el plugin de Wordpress "Contact Form 7" puedes redirigir al usuario a otra página después de enviar las respuestas con el siguiente código:

on_sent_ok: "location.replace('http://www.redirectedpage.com');"

Esta línea de código debes copiarla en el cuadro de "configuración" al final del formulario específico que creaste.

Redireccionamiento con condición Si quieres que el redireccionamiento dependa de una respuesta específica, puedes usar el siguiente código:

on_sent_ok: " if (document.getElementById('car').value=='yes') {location.replace('http://www.redirectedpage1.com')} else { location.replace('http://www.redirectedpage2.com/') } "

El código en letras negritas debe ser cambiado por tus configuraciones.

Por ejemplo: La pregunta con el id "car" tiene dos posibles respuestas: "Yes" o "No". Si una persona selecciona "Yes" será redirigida a "http://www.redirectedpage1.com". Si selecciona "No", el usuario será redirigido a "http://www.redirectedpage2.com/".

31 oct 2012 17:08:49
Comentarios

Para lectores futuros, on_sent_ok está obsoleto ahora :) Por favor usa Eventos DOM como se sugiere aquí

Muhammad Osama Muhammad Osama
13 nov 2019 09:49:53
1

Simplemente escribe el código en la configuración adicional del formulario de contacto 7 como se muestra a continuación:

on_sent_ok: "var Iso = $("input[name=radio-565]:checked").val() ; if(Iso == 'value1' ){ location = 'www.example.com'; } if(Iso == 'value2' ){ location = 'www.example2.com'; }"

####
input[name=radio-565] = nombre del botón de radio
value1 = primer valor del botón de radio
value2 = segundo valor del botón de radio
2 mar 2014 08:17:13
Comentarios

Por favor, no solo publiques un código, intenta agregar alguna explicación: cómo funciona el código.

Mayeenul Islam Mayeenul Islam
2 mar 2014 10:04:40
0

Quizás esto ayude:

http://drzaus.com/snippet/wordpress-is-contact-form-7-missing-on_submit-callback

aquí en el evento submit puedes verificar si el input de aceptación está marcado y luego redirigirlos con

window.location = 'http://example.com/tu-otra-pagina';
31 oct 2012 02:54:41