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

36 discussions

  • 4

    Bonjour,

    J’utilise le plugin sur le site http://cantabilelagnieu.free.fr/.
    Il correspond à ce que je cherchais et fonctionne bien.
    Par contre je voudrais changer le texte « Veuillez utiliser ce formulaire pour m’envoyer un message » et je n’arrive pas à trouver le fichier à modifier.
    Ou faut il chercher ?

    Merci par avance.

    Répondre à ce message

  • bonjour,

    merci pour ce plugin, lorceque j’envoi un message les accents sautent à la réception, une idée ?

    Répondre à ce message

  • 7
    Stéphane

    Bonjour,
    Soit je suis bête (ça c’est encore possible), soit je n’ai rien compris (j’opterai plutôt pour cette dernière solution)...
    Je m’explique : j’ai installé le Plug-in, là OK.
    Ensuite dans la page Contact de mon squelette, j’ai rajouté dans un div (pour la mise en page) :

    #FORMULAIRE_CONTACT_LIBRE#EMAIL

    Tout fonctionne très bien dans le processus, mais je ne reçois aucun message.
    Par défaut, je pense que #EMAIL correspond à l’email défini lors de l’installation de Spip..., mais rien ?
    Comment déclarer l’email qui doit recevoir le message de contact ? Dans mon CSS ? Dans ma page HTML ? Ailleurs dans SPIP ?

    Merci de votre aide.

    • Héhé, allez, on va dire que c’est la faute de la doc et de son auteur pour pas confirmer ta première hypothèse ;)

      Il faut passer une adresse email en paramètre au formulaire (en dur ou par le biais d’une balise). J’avais mis #EMAIL dans les exemples de code au cas où le formulaire soit utilisé dans une boucle qui fournisse bien une balise de ce nom. Ce sujet a déjà été abordé dans ce forum si je me trompe pas, j’ai donc corrigé les exemples de code pour que plus personne ne tombe dans le panneau.

    • Stéphane

      re.... !?
      Bon, c’est vrai, je suis débutant sous SPIP...!?
      J’ai donc écris dans ma page ’’contact.html’’ le code : ’’#FORMULAIRE_CONTACT_LIBRE#EMAIL’’

      Comment passer mon adresse email de contact en ’’dur’’ ? (cette adresse email sera toujours la même).

      Mon application est simple : dans ma page contact, je voudrais que n’importe quel visiteur puisse saisir son adresse email + sujet + message et l’envoyer vers mon email de contact qui serait ’’chezmoi@domaine.fr’’.
      Comment faire le plus simplement ?

      Désolé mais je débute...
      Stéphane

    • Comme je te le disais dans mon précédent message, j’ai mis à jour la doc avec ce bel exemple :p

      #FORMULAIRE_CONTACT_LIBRE{truc@domaine.net}

    • Stéphane

      Merci, ça fonctionne très bien maintenant, sauf....., sauf que :
      lorsque je reçois l’email, j’ai bien le sujet et le message, mais l’adresse email de l’expéditeur est ... l’adresse mail de contact du site !!!! Donc impossible de répondre à la personne qui cherche à contacter le site...

      Une idée ?

    • Salut, je viens de tester sous SPIP 3rc et SPIP 2.1.13 : aucun problème c’est bien le mail entré dans le formulaire qui est affiché en tant qu’expéditeur dans le mail généré.

      Pour info, si le mail entré par l’expéditeur n’est pas valide, alors SPIP le remplacera par l’adresse de contact du site. Ne serait-ce pas ce qui se passe chez toi par hasard ?

      ++

    • Stéphane

      Bonjour à nouveau,
      J’ai eu un doute, car lorsque j’ai fais quelques tests j’ai du mettre une adresse ’’bidon’’ mais avec une structure correcte..., mais je viens de refaire un test avec une autre de mes adresses (valide ;-), et j’ai le même problème :
      De : XXXXX@truc.fr
      A : XXXXX@truc.fr

       ?????

      Ma version de Spip : SPIP 2.1.10 [17657]
      Version du plug-in : 0.1.3

      Je ne comprends pas....

    • Stéphane

      Bonjour,
      Je réitère ma demande de conseils : je reçois donc bien le message du formulaire, toujours avec la même adresse d’expéditeur et de destinataire :
      Exemple :
      De : monsite@adresse.fr
      A : monsite@adresse.fr

      En fait, je croyais que l’adresse de la personne qui a rempli le formulaire sur le site était inexistante, mais lorsque j’ai fais ’’Répondre’’, son adresse apparait bien...!?
      Y-a-t-il une astuce afin que son adresse apparaisse lors de la réception du message sans faire ’’répondre’’ ?
      Juste pour info, je croyais à un mauvais paramétrage de OUTLOOK, mais j’ai fais le même essai en relevant le message sur la messagerie de mon fournisseur, sans passer par OUTLOOK : même problème (qui n’en est pas vraiment un, mais j’aimerai quand même ne pas être obligé de faire ’’répondre’’ pour découvrir l’adresse de l’expéditeur).

      Merci d’avance.

    Répondre à ce message

  • fabien

    bonjour, je débute en spip !!!!
    ce plugin est excellent, rajouter à des articles un liens direct vers un formulaire de contact, c’est trop top.
    sauf que dans mon cas je n’arrive pas aprés avoir mis le code permettant de de faire un lien hypertexe avec apparition du formulaire contact, d’avoir un affichage d’une demande d’adresse de la personne concerné.... donc faire un champ pour que la personne me l’indique et que je puisse la récupéré dans le mail envoyer ? merci

    Répondre à ce message

  • 7

    Bonjour à tous, je reviens vers vous car suite à la mise en place du plugin,
    tout se passait apparemment, bien j’ai même « email envoyé » d’affiché en vert...
    mais je ne reçois rien ni dans ma boîte mail ni dans mes spams (hotmail ou gmail j’ai testé les 2).
    Je suis chez OVH et l’envoi de mail php () est apparement en place puisque j’ai pu m’envoyer un mail via spip en simulant la perte de mon mot de passe.

    Je n’ai pas non plus d’« error » ou « erreur » dans la partie du log « spip.log » dans /tmp concernant le plugin...

    Des idées ?

    • Salut, le formulaire de contact libre utilise exactement les même fonctions que le formulaire ecrire_auteur de SPIP. Pour cibler le problème essaye de contacter un auteur depuis sa page publique. Tu peux par exemple créer un auteur avec la même adresse mail que tu tentes d’utiliser depuis le formulaire de contact libre.

      ++

    • Pour compléter ce message je ne sais pas si ça peut avoir une incidence mais le formulaire est intégré dans une page de type squelette et non un article.

    • Ma page contact.html contient seulement la ligne #FORMULAIRE_CONTACT_LIBRE#EMAIL sans boucle. N’étant pas dans un article je ne pense pas que je puisse faire un ecrire_auteur.

      Sinon comment faire pour contacter un auteur depuis « sa page publique » , j’ai créé un autre auteur avec mon adresse mais je ne sais pas comment faire pour la suite.

      (faudrait-il également créer un dossier /formulaires dans mon /squelettes ?)

    • Hmm, rassure moi, il y a bien une variable email dans ta page ?

      Ce code est un exemple tiré de la doc : #FORMULAIRE_CONTACT_LIBRE{#EMAIL}

      La balise email est à remplacer par une adresse mail en dur ou par une balise qui correspond à une variable existante bien sûr.

      ++

    • Merci pour la réponse, j’ai trouvé une parade de mon côté, j’ai supprimé mon squelette et je suis passé par la création d’un article et là ô miracle ça a marché ;-).
      Cependant peut-être que vous pourriez m’aider sur autre chose ^^

      Je viens de mettre en place le site sur OVH fonctionnant sur SPIP 2.1.12 et j’ai utilisé la fonction réécriture d’url qui se trouve dans les fonctions avancés du backoffice. Cela a eu l’effet escompté sur les articles mais cependant sur des pages type squelette (car j’en ai quelques unes et pas seulement Sommaire, article et rubrique) j’ai toujours :

      /spip.php ?page=
      PAGE TYPE SQUELETTE

      Comment réécrire l’url pour ne pas avoir la partie en gras à chaque fois affichée dans l’URL ?

      PS : pour information les autres pages type squelette sont en .html et situées dans un fichier /squelettes.

    • trouvé, sujet clos ^^

    • The_Moye

      “trouvé, sujet clos ^^”

      Francky, c’est possible d’expliciter aux copains ? :D

    Répondre à ce message

  • 1

    Bonjour,
    Est-il possible d’utiliser conjointement ce plugin avec Facteur pour bénéficier de la possibilité d’envoi d’une pièce jointe dans un formulaire de contact ?
    Je cherche une alternative au Formulaire de contact avancé 0.7.4 car il ne fonctionne pas sur un de mes sites :
    SPIP 2.1.12 [18732] avec :
    Formulaire de contact avancé 0.7.4
    Facteur 1.8.5
    CFG 1.16.0
    jQuery UI 1.8.16
    Saisies pour formulaires 1.24.3

    • Non, ce plugin est un simple formulaire de contact qui se veut une alternative simple au formulaire de contact avancé. Si le formulaire de contact avancé permet de faire ce que tu souhaites il vaut mieux l’utiliser (et aider son développeur à la débugguer si tu rencontres un problème avec).

      ++

    Répondre à ce message

  • 2

    Bonjour, cool pour ce plugin !
    Mais comment faire pour que l’internaute choisisse le destinataire dans une liste (Direction Informatique (dsi@mondomaine.net), Direction des Ressources Humaine (drh@mondomaine.net), etc.)
    Merci d’avance

    • Salut, ce n’est pas prévu par le plugin. Mais en bidouillant un modèle perso, tu peux proposer des liens qui afficheront le formulaire lors d’un clic comme sur cette page :

      http://www.francejka.com/contact.html

      Déposer ce code dans squelettes/modeles/bloc_contact.html

      [(#ENV{email}|oui)
      <p><a class="spip_in contact" href="">Envoyer un message</a></p>
      #FORMULAIRE_CONTACT_LIBRE{#ENV{email}}
      <script type="text/javascript">
      	(function($){
      		$(function(){
      			$(".formulaire_contact_libre").hide();
      			$("a.contact").click(function(){
      				$('.formulaire_contact_libre').toggle('slow');
      				return false;
      			});
      		});
      	})(jQuery);
      </script>]

      Et l’appeler depuis un article avec <bloc_contact1|email=trcu@machin.net>.

      Et hop :)

    • Merci pour ce modèle qui fonctionne très bien.

      Par contre, si j’ai plus d’un seul formulaire par page, il va s’ouvrir et se refermer autant de fois qu’il y a de formulaire sur la page...

      Une idée pour remédier à ça ?

      Merci !

    Répondre à ce message

  • 3

    Bonjour à tous,

    J’ai la version 2.1.8 de SPIP et pour tant j’ai ce message :/
    « Impossible d’activer le plugin ../plugins/contact_libre
    ° Nécessite SPIP en version [2.0.6 ;3.0.*] minimum. »

    • J’ai eu le même problème. Résolu en copiant contact_libre.html et contact_libre.php directement sur mon FTP dans squelettes>formulaires ;)

      Moi ce qui m’ennuie c’est la prévisualisation du message, et comme je suis un nain en PHP, ben j’arrive pas à shunter la prévisu pour envoyer du premier coup :(

    • Oups, désolé. C’est l’indication de la compat avec SPIP 3.0 qui avait introduit ce bug qui est maintenant corrigé et sera disponible dans le zip d’ici une heure :

      http://zone.spip.org/trac/spip-zone/changeset/58104

      ++

    • Merci, une épine en moins dans le pied, je peux continuer d’avancer ;-)

    Répondre à ce message

  • 5
    Formidable

    Salut,

    Tout marche bien, pas de messages d’erreurs.
    Mais... pas de mail reçu :(

    • As-tu testé d’envoyer un mail avec le formulaire de contact de base fourni par SPIP ? Histoire de vérifier que les mails fonctionnent bien sur ton serveur. Tu peux aussi chercher de l’info dans les logs de mail présents le répertoire /tmp.

      ++

    • Formidable

      Merci pour ta réponse.
      Je t’avoue que je suis un peu bloqué :
      J’ai seulement accès à l’interface d’admin du site (spip) car depuis nos pc au boulot impossible de se connecter en FTP.
      Et je dois modifier l’adresse de contact du formulaire, d’où l’utilisation du Formulaire de contact libre
      1/ Le formulaire de base envoie bien un mail => mais ou est configuré ce mail par défaut ?? (que je dois modifié)
      2/ Pas de bras, pas de chocolats, pas de FTP => je n’ai pas accès au répertoire /tmp

    • Depuis une page auteur dans le public tu as un formulaire qui permet d’envoyer un mail vers l’adresse de l’auteur en question.

      Sans plus d’info ça va m’être difficile de t’aider plus, désolé :(

      ++

    • j’ai le même problème...
      Je suis en local du coup c’est peut être de là que vient le problème ?
      Je suis très très débutante dans le domaine..
      J’ai essayé d’envoyer un message via le formulaire de base de spip (celui qui apparait à partir du lien de l’auteur) et j’ai ceci qui apparait ;
      « Erreur : à cause d’un problème technique, l’email ne peut pas être envoyé. »

      Avec le formulaire de contact libre j’ai « Message envoyé » mais rien n’apparait dans ma boite mail...Je l’ai apelé à partir du contenu en collant « 

      <?php include_once("/opt/nursit/sys/home/nursit/matrice/public/4.2/07/spip/ecrire/balise/formulaire_.php"); if ($lang_select = "fr") $lang_select = lang_select($lang_select); inserer_balise_dynamique(balise_FORMULAIRE__dyn(arguments_balise_dyn_depuis_modele('FORMULAIRE_CONTACT_LIBRE'), 'truc@domaine.net', 'spip.net'), array('', '', '', '', 'fr', '1')); if ($lang_select) lang_select(); ?>

       » dans le texte...

    • Salut, ton serveur n’est tout simplement pas configuré pour envoyé des mails. Il faudrait fouiller dans la doc de celui-ci.

      ++

    Répondre à ce message

  • 3

    Bonjour,

    Super ce plugin, mais je souhaiterai mettre en fixe le sujet comment puis je faire ?

    Merci

    • Salut, cette fonctionnalité n’est pas prévue par le plugin. Le but étant de coller au maximum au comportement du formulaire ecrire auteur de SPIP et de garder un plugin simple d’utilisation sans trop d’options.

      Par contre c’est possible en bidouillant ;) Il faut que tu caches le champ sujet du formulaire avec une règle css et ensuite tu devras forcer la valeur du sujet en utilisant le pipeline formulaire_charger de SPIP :

      http://programmer.spip.org/formulaire_charger

      ++
      b_b

    • un petit plus sympa qui colle bien avec le comportement par défaut : dans la fonction d’initialisation (formulaires_contact_libre_charger_dist) de formulaires/contact_libre.php il faudrait récupérer le mail de l’auteur connecté : 'email_message'=>$GLOBALS['visiteur_session']['email']

    • Salut, oui bonne remarque, voilà qui est intégré :

      http://zone.spip.org/trac/spip-zone/changeset/50869

      ++

    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