Installation
- Installez le plugin, selon votre version de SPIP, comme expliqué ici : http://www.spip.net/fr_article3396.html
- Si vous utilisez le plugin CFG, accédez à la page du plugin via le bouton de l’onglet ’Configuration’ de l’espace privé (réservé aux webmestres).
Optionnellement, le plugin est disponible dans le fil RSS de chargement automatique de Spip-Contrib (onglet ’Ajouter des plugins’ de la page de gestion des plugins de l’espace privé).
Une page de démonstration est disponible à l’adresse suivante (documentation livrée avec le plugin) : http://demo-spip3.ateliers-pierrot.....
Utilisation & Fonctionnement
La balise
Le plugin définit la balise #TIPAFRIEND [2] à utiliser dans vos squelettes, qui fait apparaître un lien ouvrant le formulaire d’envoi du plugin (cf. aperçu). Elle charge le modèle « modeles/tipafriend.html » en lui passant les différents paramètres récupérés de l’analyse de la page courante. Elle accepte un ou plusieurs argument, tous optionnels [3].
#TIPAFRIEND{
type modèle ,
url à transmettre ,
adresse de l'expéditeur ,
nom de l'expéditeur ,
adresse(s) du(des) destinataire(s)
}
Le premier argument, « type modèle », sera le plus souvent noté seul et présente deux utilités différentes :
- s’il vaut « mini », le modèle renverra l’image seule, sans le texte du lien « Envoyer cette page ... » ;
- s’il s’agit d’un nom de modèle, la balise chargera ce modèle (s’il existe) plutôt que le modèle par défaut du plugin (cf. chapitre « Personnalisation »).
Exemples
// balise seule
#TIPAFRIEND
// pour ne voir que l'image
#TIPAFRIEND{mini}
// ou avec un modele personnel
#TIPAFRIEND{mon_modele}
Ce qui est envoyé
Cette balise tentera quoiqu’il arrive de récupérer les différentes informations de la page et notamment le type d’objet et son identifiant si elle est incluse dans une boucle. Cela permet de proposer l’envoi aux internautes pour toutes les pages du site, même s’il ne s’agit pas d’une page de présentation d’un objet éditorial (typiquement les adresses du type « ?page=... ») : le plugin tentera de récupérer le titre et l’URL de la page courante, et son contenu éditorial le cas échéant.
Le modèle par défaut du lien généré par la balise est « accessible » au sens du W3C : il ouvre le formulaire en nouvelle fenêtre même si JavaScript est désactivé sur le navigateur de l’internaute.
Raccourci typographique
Le plugin propose également d’intégrer le lien directement dans le contenu des objets éditoriaux de SPIP. Il s’agit du raccourci typographique de SPIP pour inclusion des modèles appliqué au modèle « tipafriend_typo.html » (attention ici, le modèle typographique est « tipafriend_typo » et non « tipafriend » tout court comme ailleurs dans le plugin).
Dans le cas du raccourci typographique, SPIP ne peut pas récupérer les différentes informations de l’objet dans lequel il est inclus. Vous devez donc préciser au minimum un objet
et un id_objet
[4].
// notation à retenir
<tipafriend_typo|>
// notation avec tous les arguments
<typafriend_typo|
objet=...| // type d'objet SPIP (nécessaire)
id_objet=...| // ID de l'objet (nécessaire)
lang=...| // langue (option)
squelette(ou "type")=...| // type de squelette ou nom du squelette (option)
url=...| // URL à utiliser (option)
mex=...| // mail expediteur (option)
nex=...| // nom expediteur (option)
mdes=... // mail(s) destinataire(s) (option)
>
// exemple pour l'article 13
<typafriend_typo|objet=article|id_objet=13>
Pour mémoire, à l’exception des trois premiers, les paramètres sont les mêmes que pour la balise.
Configuration
Tip A Friend est prévu pour proposer une page de configuration grâce au plugin CFG mais celui-ci n’est pas obligatoire.
La page de configuration permet de définir (cf. portfolio) :
- les patrons utilisés pour construire le message transmis, en version brute et HTML,
- le type de contenus des objets SPIP qui seront inclus dans le corps du message,
- le squelette utilisé pour le formulaire présenté à l’internaute,
- si les en-têtes HTML (balise <head>) doivent y être inclus ou non,
- si le bouton « Fermer » (en bas de la popup) doit être présenté ou non,
- si le fichier CSS par défaut doit y être inclus ou non,
- des arguments et attributs à ajouter au lien apparaissant en lieu et place de la balise dans vos pages [5],
- si la fonction par défaut d’ouverture d’une fenêtre popup doit être active ou non,
- de redéfinir l’action javascript du bouton « Annuler » proposé sur le formulaire.
Aperçu
Version HTML
Le plugin est prévu pour utiliser, optionnellement, le fonctionnement du plugin Facteur, qui surcharge de façon invisible les fonctions d’envoi de mail standards de SPIP. Si Facteur est installé et actif sur votre site, une version HTML du mail peut être construite et envoyée, accompagnée de la version ’classique’ en texte brut.
Personnalisation
Pour rappel, vos modèles et patrons de mail personnalisés doivent être placés respectivement dans les répertoires « modeles/ » et « patrons/ » de vos squelettes.
Modèles de mails
Vous pouvez personnaliser les squelettes utilisés pour la construction du mail qui est envoyé. Le modèle par défaut est un squelette SPIP standard, à ceci prêt qu’il construit un corps de mail et doit donc suivre une structure simple en texte brut : pas d’en-tête ni de pied de page html, les sauts de ligne sont tous visibles après compilation etc. Pour créer un squelette personnalisé, il est conseillé de travailler à partir d’une copie du squelette « patrons/tipafriend_mail_default.html » [6].
Sur le même principe, vous pouvez personnaliser le patron utilisé pour construire la version HTML du mail envoyé par le plugin en travaillant sur une copie du fichier « patrons/tipafriend_mail_default_html.html ».
Squelettes du plugin
Vous pouvez également personnaliser le squelette présentant le formulaire d’envoi sur le modèle du fichier « modeles/tipafriend.html ». Votre squelette devra impérativement inclure le formulaire « tipafriend_form ».
Styles CSS
Les styles CSS du formulaire sont modifiables dans le fichier « tipafriend.css » à la racine du plugin. Ils définissent principalement l’apparence de la page en popup (cf. les aspects techniques ci-dessous). L’inclusion de ces définitions CSS peut être annulée sur la page de configuration du plugin.
MAJ du 11/03/2011 - Le formulaire a été entièrement revu pour définir des classes CSS pour chaque champ de saisie. Voyez le contenu du fichier « tipafriend.css » pour une liste complète (cf. portfolio) [7].
Dimensions de la fenêtre
Les dimensions de la fenêtre popup proposant le formulaire d’envoi du mail peuvent être modifiées dans le fichier « tipafriend_options.php » à la racine du plugin, en éditant les valeurs _TIPAFRIEND_POPUP_WIDTH et _TIPAFRIEND_POPUP_HEIGHT.
Aspect technique
Squelette du formulaire
Le squelette de la page du plugin proposant le formulaire (le fichier « tip_a_friend.html » dans le répertoire du plugin) est construit de façon à rester au plus proche de la distribution de SPIP tout en étant compatible, autant que possible, avec les squelettes Z.
Envoi des mails
Contrairement à certains de ses camarades, Tip A Friend utilise les fonctions d’envoi de mail standards de SPIP (elles-mêmes surchargées par le plugin Facteur si vous l’utilisez), ce qui le rend relativement léger mais peut cependant poser problème lors de l’envoi depuis certains hébergeurs [8]...
Déboguage
Pour aider le développement de vos personnalisations, il est possible de passer le plugin en mode ’verbose’ en activant la constante « _TIPAFRIEND_TEST » tout en haut du fichier « tipafriend_options.php ». Cela inscrit à l’écran l’ensemble des données transmises au squelette par la balise ainsi que l’environnement du formulaire du plugin. Ces informations surchargent considérablement l’affichage des pages mais peuvent être utiles à la compréhension du cheminement et du traitement des informations. Pensez bien à repasser en mode ’classique’ après vos développements ... ATTENTION - Les mails sont envoyés même en mode ’verbose’ ...
Discussions par date d’activité
2 discussions
Bonjour,
Je constate plusieurs tentatives de spam via le formulaire de ce plugin.
Y-a-t-il un moyen de sécuriser le formulaire ? Via captcha ou autre ?
Merci
Les captcha c’est mal. C’est pas accessible. Ca donne souvent des données à des grosses boites.
Du coup pour l’instant sur la version 1.6.10, je viens d’ajouter la déclaration au plugin nospam, souvent bien efficace. Pour l’instant je n’ai mis que la déclaration basique. A verifier l’effet deja à l’usage. Si jamais ca n’est pas effectif, on mettra également des fonctions avancées du plugin.
Merci pour l’info et cette nouvelle mouture.
Je vous tiens informé.
Bon week-end
Répondre à ce message
Bonjour
Je reviens - huit ans après - sur ma question d’août 2012 :
Dans le mail reçu, le lien vers l’article « partagé » est erroné depuis la version 1.5.1 du plugin, si l’appel au formulaire se fait en utilisant la balise :
Dans mon cas, dans le mail envoyé, l’URL pointant vers l’article que l’on veut partager est :
Alors que ce lien devrait être (par exemple) :
Depuis cette époque, j’étais resté sur la version 1.5.0 qui ne connaît pas ce défaut.
Les versions 1.5.0 et 1.5.1 du plugin ne fonctionnant plus sur SPIP 3, j’ai cherché les causes.
En comparant les fichiers « tipafirend.php » (dossier « balise » du plugin), j’ai vu que la seule différence entre les versions 1.5.0 et 1.5.1 concernait l’ajout d’un paramètre de langue.
Mais ce ne sont que des bidouillages...
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 :
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.
Suivre les commentaires : |