Objectif
Le script liste le nom de chaque rédacteur sur une page choisie. Les liens permettent l’ouverture d’une fenêtre pop-up qui contient un formulaire généré par la balise #FORMULAIRE_ECRIRE_AUTEUR de Spip, et permet d’envoyer un email.
La boucle d’affichage des auteurs et du lien pour leur envoyer un message
Le paramètre {tout}
Le paramètre {tout} permet de lister tous les rédacteurs, qu’ils aient écrit quelque chose ou pas. (voir l’article 907)
Il faut bien vérifier dans tout le site qu’il n’y ait plus de #EMAIL qui apparaissent.
La page avec le formulaire
Le fichier inc_ecrire_auteur.php3 :
Le inc_ecrire_auteur.php3 est un fichier .php3 à 1 mois (30*24*3600 secondes) de
délais, il n’est absolument pas nécessaire de mettre un délai court.
Son squelette inc_ecrire_auteur.html :
Son squelette inc_ecrire_auteur.html se contente d’afficher la mise en page avec une simple boucle AUTEUR{id_auteur} et #FORMULAIRE_ECRIRE_AUTEUR
Le voici : adaptez le à cotre convenance.
J’ai placé des commentaire dedans.
Démonstration
J’utilise ce pluggin dans ce site http://espace.jdr.ath.cx
Utilisation
Quand vous avez besoin d’afficher les auteurs de l’article avec un lien vers leur formulaire, il suffit de placer la ligne suivante à l’intérieur de la boucle article :
<INCLURE(inc_lien_ecrire_auteur.php3){id_auteur}>
Il faudrait améliorer cela pour qu’un message soit envoyé dans la partie privée si le rédacteur n’a pas mis d’e-mail.
Autres utilisations... :
Vous pourriez utiliser d’autres champs du rédacteur, ou bien les champs EXTRA pour permettre au rédacteur de spécifier une autre adresse e-mail pour recevoir les messages des visiteurs.
améliorations à faire
Je me suis inspiré de la fenêtre qui s’ouvre pour permettre de recevoir ses identifiants par e-mail quand on les a oubliés.
Il faudrait que cette fenêtre pop-up soit refermée et crée, parce que si elle est déjà ouverte mais masquée cela peut poser quelques problèmes quand on a un système anti popup. (la fenêtre ne viendrait pas au premier plan, cela donnerait l’impression que le lien ne fonctionne pas.)
L’autre solution consiste à nommer différement la fenêtre, par exemple mail#id_article.
Grégoire

