Publicado por: 34

Hasta ahora siempre había utilizado para hacer formularios en wordpress el plugin Contact Form 7. Es sencillo, útil y fácil de utilizar. Además, cuando empecé con wordpress tampoco había mucha cosa, no como ahora. Me imagino que habrán mejores soluciones, aunque la valoración que tiene es buena.
Pues bien, lo instalo, creo el formulario de contacto para este portal (me pide que instale el plugin Really Simple CAPTCHA para el captcha) y lo pongo en una página llamada Contacto (más arriba).
Hasta ahí todo bien. Pero al probarlo, se me queda la imagen de loading fija y no me muestra ningún tipo de aviso ni de error, ni de notice ni de message ok. Pero eso sí, el email lo recibo correctamente.
La solución a este bug es la siguiente:
– Entramos en la carpeta /wp-content/plugins/contact-form-7 y abrimos el fichero scripts.js
– Buscamos la línea

$('div.wpcf7 > form').ajaxForm({

Y la cambiamos por (añadimos el -form a la clase wpcf7)

$('div.wpcf7-form > form').ajaxForm({

– Hacemos lo mismo pero con

$('div.wpcf7 > form').each(function(i, n) {

Y la cambiamos por (añadimos el -form a la clase wpcf7)

$('div.wpcf7-form > form').each(function(i, n) {

Con esto ira la validación, el envió y la confirmación. Un error tonto que me hizo pensar que este plugin había dejado de ser tan sencillo, pero si solo es eso, no problem.

34 Comentarios

    1. Administrador Microteching Autor del artículo

      Tiene pinta de eso…. pero ahora mismo no se me ocurre donde se controla esto en el WP y de que forma influye… creo que también depende de como lo tenga habilitado el hosting…

  1. Juan Carlos Febrer

    Genial!!! Dos horas de quebraderos de cabeza!!! Gracias!
    Para el problema del envío de correo, yo lo he solucionado con el plugin: WP-Mail-SMTP

  2. amanda

    Hola!
    Te consulto un problemita que tengo con el Contact Form… quizá puedas darme una mano!
    Hace tiempo que lo uso y siempre me funcionó ok- Hace unos días detecté que el campo “MENSAJE” no permite escribir más que 4 letras… probé con diferentes navegadores y actualicé el plugin y nada…
    Alguna idea de qué puede ser…?
    Gracias y saludos!

    1. Administrador Microteching Autor del artículo

      Buf… si nos puedes pasar una URL donde lo podamos ver….
      aunque no te aseguro nada..

      Gracias!

    1. Administrador Microteching Autor del artículo

      Pues ni idea… he hecho un par de pruebas y parece que en la petición ajax obtienes una respuesta que te dice que te lo está detectando como spam.
      Esto es lo que he obtenido con la consola de firebug:
      {“mailSent”:false,”into”:”#wpcf7-f2199-p2195-o1″,”captcha”:null,”message”:”Fall\u00f3 el env\u00edo de tu mensaje. Por favor int\u00e9nta m\u00e1s tarde o contacta al administrador por otro medio.”,”spam”:true}
      No se si es que debe tener configurado alguna historia de marcar como spam ciertos user agents o yo que se que…

      Saludos!

      1. Ricardo

        Sí es por donde estaba buscando… pero no he sido capaz de solucionarl, limpié caché, cambié código y nada. Seguiré buscando.

        Gracias por todo! blog como este nos facilitan mucho la vida.

      2. Administrador Microteching Autor del artículo

        Pues nada… si encuentras alguna solución… no dudes en compartirla con nosotros y tal vez ayudes a muchos otros que se encuentren con este problema.

        Venga! Gracias por los ánimos!

  3. Francisco

    Hola yo tengo el mismo problema con el formulario,, me dice que hay un error que intente mas tarde o que me comunique con el administrador,,com puedo solucionarlo,,en mi caso los mails no llegan
    muchas gracias

    1. Administrador Microteching Autor del artículo

      Pues nada… a ver si alguien que nos lea, lo averigua y comenta la solución.

      Saludos.

  4. Ariadna

    Buenas tardes,
    Estaba haciendo un formualrio con Form Contact 7.
    He leido todo lo que estaba por aqui, y he probado todas las soluciones que habeis dado. Pero ninguna me ha podido solucionar el problema que tengo.
    No me sale el error que a muchos si, pero porque he desinstalado el WP-Mail-SMTP.
    El problema que tengo es que no recibo el EMAIL.

    ¿Alguna solución?

    Gracias, saludos!

    1. Administrador Microteching Autor del artículo

      Y si lo vuelves a instalar, o restauras un backup de antes de desinstalar este plugin?

  5. Ale

    hola, mi problema es que me envía el mail y la confirmacion a mi correo de admin, y no le llega la confirmación al usuario q usa el form.
    saben como resolverlo?
    gracias!

  6. Ale

    Es raro, reviso la configuración y la comparo con tutorial es y esta ok. Llegan los mails, pero todos a mi cuenta. Así que mientras desactivé la opción de confirmación. Y tan bonito q me había quedado ajjaja
    Gracias por responder!

  7. Josean

    Buenas.
    Tengo el mismo problema. Tengo el plugin Formulario de contacto 7 e instalé tambien el plugin de wp-mail-smpt.
    El caso es que sigue si funcionar. El fallo que me da es:
    # Falló el envío del mensaje del remitente

    Si alguien lo ha solucionado please, que me ayude…

    1. Administrador Microteching Autor del artículo

      Por mi parte no puedo ayudarte…
      Espero que tengas suerte y si encuentras la solución siempre la puedes compartir por aquí.
      ;-P

      Saludos!

  8. Jacobo

    Buenas,
    gracias por esta ayuda. A ver, comento mi problema.
    En mi caso, envía bien el formulario pero se queda como pensando.
    He intentado hacer lo que has dicho de entrar en el archivo script.js pero no lo encuentro por ninguna parte. Mejor dicho, hay dos pero están en los directorios
    wp-content/plugins/contact-form-7/admin/js y en wp-content/plugins/contact-form-7/includes/js y no hay nada del código que dices.

    Por favor os pido ayuda…
    Muchas gracias de antemano

    1. Administrador Microteching Autor del artículo

      Supongo que debes tener una versión 7 un poco más nueva o algo…
      Intenta buscar “div.wpcf7” en todos los archivos que cuelguen de “wp-content/plugins/contact-form-7/” y a ver si encuentras algo similar…
      Sinó ya es cuestión de depurar con el inspector.
      Si lo tienes en producción tal vez nos puedas pasar la url y así alguien te puede ayudar un poco más…

      Saludos!

  9. Jacobo

    Muchas gracias. Acabo de detectar el error. buf…
    La verdad es que estas cosas son sencillas pero como no des con la tecla..

    Muchas gracias por tu contestación…

    1. Juanan

      Hola Jacobo, llevo unos días con el mensaje:Falló el envío del mensaje. Por favor, inténtelo más tarde o contacte con el administrador por otro medio.

      Antes funcionaba sin problemas, puedes publicar como has solucionado el problema. Muchas gracias

  10. Jacobo

    Buenas Juanan,
    utilizo otro plug in para autenticar el mensaje, sino no llega. Configurando ese plug in (Configure SMTP), hay una opción (enable debuggin) que la tenía activa.
    Pero en tu caso, te recomiendo que instales ese plug in y ya me dices cómo te va.

    Un saludo y suerte

  11. andres leon

    Buenos dias… llamarme torpe pero no lo encuentro solo veo esto.. es aqui??

    });

    $(‘div.cf7com-links’).insertAfter($(‘div.wrap h2:first’));

  12. Luis

    Hola, a mi me funciona todo bien pero no me sale la leyenda “Su mensaje se ha enviado con éxito. Muchas gracias.” Alguien sabe porque puede ser o como solucionarlo?

    1. Administrador Microteching Autor del artículo

      Hola Luis, gracias por tu comentario.
      Así sin más datos puede ser difícil que te ayude alguien..
      Tienes alguna url para que podamos ver el problema?
      Te sale algún error en la consola?

      Un saludo y a ver si hay suerte!

  13. Saúl

    A mí de la noche a la mañana ha dejado de funcionar. No me da error y se queda pensando el icono. Tampoco me llegan los correos ni da ningún mensaje. ¿Alquien sabe por qué es? Gracias.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.