Formulaire de contact libre

Dans SPIP il n’y a pas un formulaire de contact, mais autant de formulaires de contact que d’auteurs.

Cette phrase de Romy, dans son article Une page de contact dans mon SPIP, pointe un petit manque de SPIP. La possibilité d’insérer rapidement un formulaire de contact sur son site sans avoir à créer un auteur spécifique ou autre ruse de ce style.

C’est pour répondre à ce besoin simple qu’est né le plugin contact libre. Il reprend le même principe de fonctionnement que les formulaires de contact de SPIP.

Comment utiliser le formulaire

Le formulaire accepte trois arguments en paramètres :

  1. le premier argument est l’adresse email du destinataire du formulaire,
  2. le deuxième argument est une URL qui sera insérée en fin du mail envoyé pour référence (cet argument est optionnel),
  3. le troisième argument permet de spécifier le sujet par défaut affiché dans le formulaire (cet argument est optionnel).

Dans le texte d’un article (ou d’un autre objet de SPIP) vous pouvez appeler le formulaire à l’aide du code suivant :

<formulaire|contact_libre|email=truc@domaine.net>

Et si vous souhaitez définir uniquement le sujet du message :

<formulaire|contact_libre|email=truc@domaine.net|url=''|sujet=hop>

Vous pouvez aussi utiliser le formulaire dans vos squelettes :

#FORMULAIRE_CONTACT_LIBRE{truc@domaine.net}

Autre exemple depuis un squelette article en utilisant tous les arguments du formulaire :

#FORMULAIRE_CONTACT_LIBRE{truc@domaine.net,(#URL_ARTICLE|url_absolue),'Mon super sujet de message'}

Informations complémentaires

Le formulaire de contact libre est automatiquement protégé des robots spammers si vous avez activé le plugin NoSPAM sur votre site.

Discussion

8 discussions

  • Comment puis-je modifier la taille du sujet ?

    Dans ../squelettes/plugins/contact_libre/modeles/contact_libre.html
    j’ai
    [(#SAISIE{input,email_message,                                 id=email_message#ENV{id},                                 label=<:entree_adresse_email:>,                                 size=150, <!-- size=30, -->                                 obligatoire=oui,                                 info_obligatoire=""})]                         [(#SAISIE{input,sujet_message,                                 id=sujet_message#ENV{id},                                 label=<:form_prop_sujet:>,                                 size=150, <!-- size=30, -->                                 obligatoire=oui,                                 info_obligatoire=""})]                         [(#SAISIE{textarea,texte_message,                                 id=texte_message#ENV{id},                                 label=<:info_texte_message:>,                                 rows=8,                                 cols=60,                                 obligatoire=oui,                                 info_obligatoire="Complétez la fiche de ce maire"})]                         <!-- info_obligatoire=""})] -->

    Mais size=150, ne change rien.
    Merci

    Joyeux Niël

    Répondre à ce message

  • 7
    elodie.drula

    Bonjour,
    Je suis face au probleme suivant : le formulaire me dit que le mail est bien envoye mais rien n’arrive a la boite mail de reception.
    J’utilise le plugin Facteur aussi

    • elodie.drula

      Re,
      J’ai oublie de preciser que quand je fais l’envoi d’un mail test via la partie privee (ecrire) avec facteur : le mail arrive bien a reception.
      Merci !

    • Avez-vous essayé de faire un test d’envoi en direction de mail-tester ?
      Ce service est très précieux dans la mesure où il analyse de manière très concrète les paramètres d’envoi et de donne de précieuses indications pour affiner le paramétrage du service d’envoi pour que celui-ci soit (presque) parfait et arrive du coup à destination

    • elodie.drula

      Bonjour,
      Je n’ai pas connaissance de ce mail-tester.
      Est ce que vous pouvez m’orienter vers une doc svp ?
      Merci

    • Merci pour le lien
      J’ai changé dans mon formulaire pour envoyer vers l’adresse fournie par mail-tester mais apres envoi via le formulaire j’ai actualisé le site mail-tester qui mouline dans le vide (avec un joli bateau qui rame ... comme moi ...)

    • Pour info, le formulaire contact libre ne fait rien de plus que les formulaire ecrire auteur du core. Donc, si tu testes d’écrire à un auteur dont l’adresse est la même que celle utilisé dans contact libre, le résultat devrait être le même. Le problème semble être ailleurs.

    • Merci pour ton aide précieuse !
      Effectivement j’ai du faire un paramètrage plus fin du coté plugin « facteur ».
      Ca marche maintenant

    Répondre à ce message

  • Message effacé par utilisateur

    Répondre à ce message

  • 10

    Bonjour à tous,
    Y a-t-il moyen d’insérer un sujet avec une syntaxe d’insertion directe dans un article : <formulaire|contact_libre|email=truc@domaine.net>
    J’ai essayé plusieurs syntaxes en rajoutant des arguments du type |sujet=test, |sujet_message=Test, etc sans trouver de syntaxe fonctionnelle..
    Merci !

    • Essaye peut-être avec : <formulaire|contact_libre|email=truc@domaine.net|url=''|sujet=hop>, à confirmer si ça fonctionne.

    • Presque 1 an plus tard, je confirme, ça marche !

    • Bonjour,

      C’est possible de mettre l’info ci-dessus dans la doc officielle avant que ça ne soit enterré dans le fil de discussion ? Merci :)

    • Rien n’est perdu dans les forum depuis qu’on peut y effectuer des recherches, mais il semble que les gens passent souvent à côté de cette fonctionnalité ;)

      PS : je viens d’effectuer l’ajout à la doc.

    • Bonjour,

      <formulaire|contact_libre|email=truc@domaine.net|url=''|sujet=hop>
      Est-il possible de mettre un sujet « dynamique » au lieu de hop
      genre
      <formulaire|contact_libre|email=truc@domaine.net|url=''|sujet=#VILLE #INSEE>
      #VILLE #INSEE sont présents dans le modèle qui contient le formulaire.

      Merci

    • Pas mis la bonne formule...

      Peut-on mettre des balises à la place de « Mon super sujet de message »

      #FORMULAIRE_CONTACT_LIBRE{truc@domaine.net,(#URL_ARTICLE|url_absolue),'Mon super sujet de message'}

      #FORMULAIRE_CONTACT_LIBRE{truc@domaine.net,(#URL_ARTICLE|url_absolue),'#VILLE - #INSEE'}

    • Oui ça doit être possible avec un balise simple, par contre si tu veux composer avec plusieurs balises il faut certainement passer par un #SET/#GET.

    • Tellement simple.
      #SET{nom,#NOM/}
      ...
      #FORMULAIRE_CONTACT_LIBRE{xxx@yyy.fr,(#URL_ARTICLE|url_absolue),#GET{nom}}

      Merci

    • Y a-t-il moyen de la même manière de préremplir dynamiquement le message avec certaines balises.

      Période du mandat : #DEBUT - #FIN

      etc

    • Bon,

      Pour faire un textarea prérempli, il faudrait bricoler le plugin en profondeur en ajoutant 1 [(SAISIES(...)]

      Avec un jeu de #SET et #GET, j’ai réussi à tout passer dans le sujet.

      Merci pour ce plugin

    Répondre à ce message

  • 5

    Bonjour,
    Je remarque que les message envoyés par contact_libre, lors de leur réception, contiennent l’adresse mail du destinataire à la place de celle de l’expéditeur, ce qui est alors compliqué pour répondre... Je remarque que ce problème intervient avec la version 2.0.6 du plugin alors qu’il n’apparaissait pas sur la version 1.1.4, que j’utilise sur un autre site.
    J’ai évidemment testé en désactivant tous les autres plugins, y compris NoSpam > même résultat.
    Informations complémentaires :
    Spip 3.2.11
    PHP 7.4.23
    MySQL : MariaDB 10.3.31
    Plugin Contact_libre 2.0.6 + Saisies pour formulaires 3.54.8 + NoSpam 2.2.1

    Répondre à ce message

  • 4

    Hello b_b,

    depuis https://zone.spip.net/trac/spip-zone/changeset/118517/spip-zone, toutes les fonctions fournies par NoSpam sont préfixées par nospam_.
    Cette modif n’a pas été prise en compte dans Contact Libre.

    Veux-tu que je m’occupe de faire la correction ?

    • Yo peetdu, merci pour la proposition, gogogo :)

      PS : il faudra penser à mettre à jour le utilise sur nospam pour préciser qu’on souhaite la version 2, et en conséquence changer la borne de compat de nospam pour indiquer qu’il n’est potentiellement plus compatible avec SPIP 3.0. Au final, il faudrait peut-être une nouvelle branche de contact_libre rien que pour ça, mais ça me chagrine un peu, disons plutôt « tant pis pour SPIP 3.0 ».

      PPS : en lisant ce commentaire de Cedric « quand tu changes l’intervalle de compatibilité comme ça, en supprimant la compat sur une version majeure il faut brancher et incrémenter la version de ton plugin d’une version majeure également. » je me dis que tu ne vas pas échapper à la création d’une branche spécifique pour ce changement anodin dans nospam, dommage...

    • Hop,

      job’s done.
      Version V2 de Contact Libre compatible avec la V2 de NoSpam et SPIP >= 3.1
      + Création d’une branche V1 de NoSpam compatible avec SPIP 3.0

    • Oups, il fallait lire

      Création d’une branche V1 de Contact Libre compatible avec SPIP 3.0 et NoSpam V1

    • (y) todobien :)

    Répondre à ce message

  • 1

    Impeccable ce plugin, Un grand merci !

    Une petite astuce pour mon cas, (plusieurs sites et domaines hébergés) :

    <formulaire|contact_libre|email=truc@domaine.net> marche que si truc@domaine.net correspond strictement à domaine.net du site où la page du formulaire est appelée.

    J’avais mis la même adresse pour différents sites, et là, c’était le drame : erreur envoi mail.... (considérés comme spam par mon hébergeur)

    • De rien, content que ça plaise :)

      Pour info, le problème que tu pointes n’a rien à voir avec le plugin mais avec l’envoi de mail depuis PHP sur ton serveur. C’est pour cela que nous recommandons de toujours utiliser le plugin facteur et de le brancher sur une boite mail en smtp ;)

    Répondre à ce message

  • 4

    Bonjour,
    j’observe des soucis de réception de mail ou des classements comme spams.
    Ça coince en particulier avec gmail. J’ai l’impression que le souci vient du champ « from » qui est rempli par la valeur que renseigne l’internaute dans le champ : votre adresse mail.
    Gmail (et peut-être d’autres ?) veulent qu’il y ait cohérence/accréditation entre le serveur ayant servi à faire l’envoi et le domaine auquel appartient l’adresse d’envoi (je ne sais pas si c’est bien clair : peut-être la copie d’écran ci dessous sera plus explicite...)
    https://framapic.org/SMFnN8Mbala4/DmIAei4wNwrs.gif

    Les serveurs de réception étant de plus en plus sourcilleux, est-ce qu’un workaround serait que le champ from soit renseigné avec une adresse liée au domaine du site internet et que le corps du message contienne en pied ou en tête qqchose comme :
    [ répondre à l’expéditeur ; valeur de l’input votre adresse mail ]

    • oui, c’est un problème fréquent et connu. Effectivement ton workaround serait une bonne méthode, il y a d’ailleurs un champ « reply-to » dans les emails, prévu pour cela notamment.

      Cela étant le plugin n’est plus maintenu.

      Deux solutions :
      -  utiliser le facteur, qui, je crois, implémente automatiquement le workaround
      -  à défaut, utiliser formidable, qui lui a nativement ce workaround

    • Cela étant le plugin n’est plus maintenu.

      @maieul : Ha bon !?! Je n’étais pas au courant... => le plugin est bien maintenu !

      J’ai l’impression que le souci vient du champ « from » qui est rempli par la valeur que renseigne l’internaute dans le champ : votre adresse mail.

      @Manu : installe le plugin facteur, c’est indispensable pour envoyer des mails s on souhaite qu’ils arrivent à destination, et active l’option qui force la ré-écriture du champs FROM.

    • Oui, j’avais fini par faire ça et du coup mail-tester donne une note de... 10/10 !
      C’est donc parfait ;-)
      Et merci pour ce petit outil bien commode

    • @b_b j’ai confondu avec formulaire de contacté avancé :)

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom