CleverMail

CleverMail est un plugin permettant d’envoyer des lettres d’informations à des abonnés depuis SPIP. Issu au départ d’un développement libre complètement indépendant de SPIP, il a connu une première version pour SPIP 1.9 avant d’être complètement réécris pour SPIP 2.0.

Fonctionnalités

  • Gestion de multiples lettres, avec possibilité de les rassembler par catégories
  • Gestion des inscriptions en ligne et désinscriptions, les abonnés étant distincts des utilisateurs de SPIP
  • Possibilité de restreindre la liste des lettres proposées dans le formulaire d’abonnement
  • Abonnement au choix de l’utilisateur en version texte brut ou multipart simultané HTML + texte brut [1]
  • Possibilité de forcer la version dans le formulaire d’abonnement
  • Récupération des contenus HTML et texte brut à partir de deux squelettes ou deux URL, donc utilisation de squelettes SPIP dédiés voire même de contenus externes au site
  • Automatisation des envois avec une fréquence quotidienne, hebdomadaire (multiples jours de la semaine possibles) ou mensuelle
  • Automatisation des inscriptions depuis un fichier distant

Mise en place du plugin

Télécharger le paquet ci-joint et placer son contenu dans votre dossier plugins/.

Avant d’activer CleverMail dans l’interface de gestion des plugins, vous devrez installer les plugins Facteur et SPIP Bonux.

Présentation de l’interface dans l’espace privé

Une fois le plugin activé, le sous menu CleverMail est crée dans le menu Edition.

Le menu de CleverMail permet de :

  • Lister les lettres existantes
  • Créer une nouvelle lettre
  • Lister les abonnés
  • Ajouter des abonnés
  • Paramétrer le plugin

Tableau de bord

Le tableau de bord général de CleverMail affiche la liste des newsletters et leurs caractéristiques principales :

Différentes actions sont disponibles

  • Modifier : Permet de modifier une lettre
  • Supprimer : Une lettre peut être supprimer seulement si aucun abonné n’y est inscrit.
  • Nouveau Message

Création / Modification d’un lettre d’information

Une lettre se compose de la façon suivante :

  • Nom : Le nom de la lettre est important car c’est par leurs noms que les lettres sont triées et classées par catégorie. "01. Ma Catégorie/02. Ma Lettre"
"01. " Ordre de la catégorie (peut commencer à 00. )
"Ma Catégorie" Nom de la catégorie (= Nom du type de publication)
"/" séparateur sans espace entre le nom de la catégorie et le nom de la lettre
"02. " Numéro d’ordre de la lettre (peut commencer à 00. )
"Ma Lettre" Nom de la lettre
  • Description : Explication back office de la lettre, par défaut ce champ n’apparait pas en front office .
  • Modération :
    • Ouverte : tout le monde peut s’inscrire sans confirmation
    • E-mail : tout le monde peut s’inscrire après confirmation par e-mail
    • Fermée : personne ne peut s’inscrire, utile pour tester avant ouverture, ou fermer temporairement
  • E-mail du modérateur : (Champ obligatoire) Le modérateur reçoit un mail dès qu’un utilisateur confirme sont inscription à une lettre. Plusieurs adresses peuvent être saisies en les séparant par des virgules.
  • Préfixe : Préfixe les sujets des messages avec le nom de la lettre d’information (ex : [Rapport annuel] Confirmation de votre inscription). Pour le formulaire multiple, en cas d’inscription à plusieurs lettres en même temps, ce champ n’est pas pris en compte.
  • Sujet et description d’une inscription : Message d’inscription qui sera envoyé par mail à l’utilisateur en cas de modération par E-mail. En cas d’abonnement multiple le message envoyé pour toutes les lettres est celui paramétré dans la section « paramétrage »
  • Sujet et description d’une désinscription : Message de désinscription qui sera envoyé par mail à l’utilisateur.
  • Version HTML : Nom du squelette [2] ou URL de la page permettant d’obtenir le contenu de la lettre en version HTML.
  • Version texte brut : Nom du squelette [3] ou URL de la page permettant d’obtenir le contenu de la lettre en version texte brut.
  • Automatisation des envois : Les envois des lettres d’information peuvent être fait manuellement ou être automatisés
    • Envois quotidiens : Les dernières publications [4] seront envoyées tous les jours à partir de l’heure précisée dans le champ "Heure de création du message". Les publications publiées après cette heure seront envoyées le lendemain.
    • Envois hebdomadaires : Les dernières publications seront envoyées toutes les semaines le jour et à l’heure précisés dans les champs "Jour(s) de la semaine" et "Heure de création du message".
    • Envois mensuels : Les dernières publications seront envoyées tous les mois au jour et à l’heure précisés dans les champs "Jour du mois" et "Heure de création du message".
  • Mode d’abonnement : mode d’abonnement à la liste par défaut si aucun mode d’abonnement n’est précisé ou forcé à l’inscription.

Tableau de bord des abonnés

Le tableau de bord des abonnés affiche la liste des abonnés aux newsletters. Il y a une ligne par couple abonné/newletter.

La liste des abonnés peut être filtrée sur une partie de l’adresse e-mail (@example.com par exemple) et/ou sur le nom de la newsletter.

L’administrateur a la possibilité de modifier le mode d’inscription d’un abonné ou de le désinscrire d’une lettre. Dans ce cas l’abonné ne recevra pas de mail de désinscription.

Un lien "Vider les abonnements en attente depuis plus d’un mois" permet de supprimer de la base de données les demandes d’inscriptions en attente de validation depuis plus d’un mois.

Cette fonction nettoie également les adresses de type @example.com qui seraient par erreur [5] restées dans la table des abonnés aux newsletters.

Ajout d’abonnés

Des abonnés peuvent être ajoutés dans l’interface privé à partir d’un fichier CSV ou directement en saisissant les adresses e-mail dans le formulaire.

Dans le fichier ou dans la zone de saisie, mettre une adresse e-mail par ligne, ou séparer les adresses par des virgules ou points virgules.

Paramétrage

La section paramétrage contient les paramètres communs à toutes les lettres.

Les paramètres génériques sont les suivants :

  • E-mail administrateur : par défaut mail du webmestre de SPIP
  • E-mail expéditeur (from et reply-to) : par défaut mail du webmaster de SPIP
  • E-mail return path : par défaut mail du webmaster de SPIP
  • Nombre de messages par envoi : par défaut « 50 ». A chaque traitement de la tache planifiée 50 messages seront envoyés.
  • Sujet et description d’une inscription multiple : Message d’inscription qui sera envoyé par mail à l’utilisateur en cas d’inscription a plusieurs lettres en même temps.

Mécanisme de création et envoi des messages

Envoi automatique

Les messages automatiques sont envoyés via une tache planifiée. Chaque jour, la tache planifiée regarde s’il y a eu de nouvelles publications depuis le dernier envoi et si la date du prochain envoi est atteinte.

Exemple d’une lettre envoyée tous les 15 du mois :

  • Janvier : Nouvelle publication le 10 => 15 du mois => envoi
  • Février : pas de nouvelle publication => 15 du mois => pas d’envoi => nouvelle publication le 17 => envoi => nouvelle publication le 20 => pas d’envoi
  • Mars : pas de nouvelle publication => 15 du mois => envoi de la publication du 20 février

Envoi manuel

Les messages peuvent également être envoyés manuellement depuis le tableau de bord des lettres d’information.

Pour créer un nouveau message, cliquer sur le lien "nouveau message" d’une lettre.

Le lien "1 message" permet d’accéder au tableau de bord des messages d’une lettre.

Ce tableau de bord permet de voir les messages par état : nouveau message, message en cours d’envoi et message envoyé.

Différentes actions sont disponibles sur les messages (selon leur état) :

  • Aperçu HTML : Visualisation de la lettre au format HTML, avant remplacement des balises de personnalisation
  • Aperçu texte : Visualisation de la lettre au format texte, avant remplacement des balises de personnalisation
  • Modifier : Modification du message qui sera envoyé
  • Supprimer : Suppression du message
  • Envoyer : Envoi du message, le message est déposé dans une file d’attente que le Facteur va dépiler au fur et à mesure de l’exécution du génie de SPIP. Le message en attente n’est plus modifiable ni supprimable.

Intégration au site public

La balise #FORMULAIRE_CLEVERMAIL permet d’afficher le formulaire par défaut des listes non filtrées par catégorie.

Il est possible de restreindre le formulaire d’abonnement à une newsletter en précisant l’id de la lettre :
#FORMULAIRE_CLEVERMAIL{1}

Il est aussi possible de restreindre le formulaire d’abonnement à un unique mode en précisant texte ou html :
#FORMULAIRE_CLEVERMAIL{0,html}

Il est enfin possible d’utiliser un formulaire avec des cases à cocher plutôt qu’une liste en passant box en troisième paramètre [6] :
#FORMULAIRE_CLEVERMAIL{0,html,box}

La balise #FORMULAIRE_CLEVERMAIL_MULTIPLE permet d’afficher le formulaire d’abonnement multiple filtrées par catégorie.

Support

En cas de bug ou problème particulier, merci de vérifier sur le Trac de la zone si un ticket existe déjà, et si nécessaire de créer un nouveau ticket avec le « component » "plugins/clevermail" et faire un commentaire ici-même pour signaler ce ticket.

Si vous avez des idées pour améliorer le plugin, même chemin, créez un nouveau ticket avec le « component » "plugins/clevermail" !

Si vous aimez ce plugin, et l’utilisez sur un site public, n’hésitez pas à le signaler sur sa fiche !

Notes

[1Attention, Lotus Notes n’aime pas...

[2CleverMail en propose un par défaut

[3CleverMail en propose aussi un par défaut

[4C’est à dire depuis l’envoi précédant.

[5Un bug depuis corrigé pouvait conduire à cette erreur

[6Le code impose pour l’instant de préciser les deux premiers paramètres, ce sera amélioré ultérieurement...

Dernière modification de cette page le 13 février 2019

Discussion

193 discussions

  • 10
    ChristianD.

    Bonjour,

    Je suis sous Spip 2.1.12 et j’utilise la dernière version de Clevermail 2.6.5. J’ai un souci pour le jour d’envoi, pas bien grave, mais bon.

    Clevermail conserve bien l’heure de départ des envois mais pas le jour. Le résultat est que comme le jour n’est pas conservé, aucun message ne part.

    Je me débrouille en lançant les messages « manuellement » mais il me faut un ordinateur sous la main. Ce serait mieux si Clevermail conservait le jour ;-).

    • Bonjour, j’ai le même problème.

      Les envois sur la liste quotidienne, dont le formulaire ne demande pas de jour d’envoi, fonctionnent à merveille mais la liste hebdomadaire ne conserve pas le choix fait sur le jour de la semaine (lundi, mardi etc). Au final les emails ne partent pas. Il faut effectivement les envoyer manuellement.

      Cela me le fait sur 2 sites dont 1 est sous SPIP 3.0.5 (clevermail 3.0.6) et l’autre sous SPIP 2.1.6 (clevermail 2.6.8).

      Je ne parviens pas à trouver d’où cela vient.

      Merci !

    • christianD.

      Plus précisément, c’est comme si CleverMail ne conservait pas le jour demandé. Après avoir sauvegardé et être sorti du programme, quand on revient « Hebdomadaire » est bien conservé mais le jour n’est plus en surbrillance.

      Peut-être une piste...

    • christianD.

      Bonjour Abel,

      Merci pour ta réponse, mais euh... je fais quoi des fichiers qui sont dans le zip ? Le fichier « menu.html » qui est dans privé, je le copie dans le même répertoire, et le répertoire formulaires avec le fichier « clevermail_list_edit.php » je le copie tel que dans le répertoire clevermail de plugins ?

      Ca va te sembler basique mes questions, mais je préfère demander avant de tout casser ;-).

    • Le lien que je t’ai donné c’était juste pour info. :-)
      Désolé pour la confusion.

      Il suffit de télécharger la dernière version du plugin ici : http://files.spip.org/spip-zone/clevermail_pour_spip2.zip
      Et de remplacer le dossier clevermail dans ton dossier plugin.

    • christianD.

      Ah, ok....

      C’est plus à ma porté, comme ça ;-).

    • christianD.

      J’ai téléchargé et décompressé la nouvelle version mais Clevermail ne conserve toujours pas le jour...

      Tant pis, je continue à la main ;-).

    • ChristianD.

      Bonjour,

      Avec la nouvelle version de Clevermail, quand je fais Gestion des plugins, je ne vois plus qu’une page blanche. Spip ne me montre pas les plugins existants...

      Je ne sais pas s’il y a une incompatibilité entre Clevermail et d’autres plugins, mais quand j’isole le répertoire Clevermail, cette page revient.

    • ChristianD.

      Encore une difficulté. Dans le mail qui part, je change à chaque fois un petit texte. Dans la nouvelle version, j’ai beau changer, sauvegarder, CleverMail ne veut rien savoir. Il conserve l’ancien ;-(.

      I y a une astuce pour passer ce blocage ?

    • obiwanriko

      Bonjour
      @Abel Vous citez clevermail en version clevermail 3.0.6 où peut-on trouver cette version ? Je la cherche partout et pas moyens de mettre la main dessus (c’est bien une version pour SPIP 3 ?

    Répondre à ce message

  • obiwanriko

    Bonjour j’ai réussit à faire fonctionner ce plugin génial sous spip 3 !!! En version 2.5.4 Alors SVP messieurs les gentils dévellopeurs de SPIP ne cassez pas cette possibilité... Car j’ai essayé les autres plugins pour Newsletter et aucun ne lui arrive à la cheville !

    Répondre à ce message

  • 5

    Bonjour,
    est-ce qu’il y a moyen d’exporter les donnés des abonnés d’une mailing liste ?

    • Je suis intéressé par la même question, j’ai extrait la liste des abonnés en faisant une requête SQL via PhpMyadmin mais je ne sais pas comment exprimer ma requête pour n’avoir que les adresses mail valide.
      Car quand quelqu’un se désinscrit de la newsletter son adresse est conservée avec un flag différent. Il faut donc filtrer en utilisant le bon flag mais la requête SQL n’est pas si simple dans ce cas, surtout quand on ne connait pas la valeur des flags en question.

      Merci d’éclairer nos lanternes sur ce point.

    • la table spip_cm_suscribers contient la liste de tous les emails mais la selection des emails valides associés à une lettre se fait via une jointure avec une autre table certainement spip_cm_lists_suscribers mais je ne sais pas comment exprimer cette jointure.

      Peut-on avoir de l’aide sur cette question ?

    • voici comment je m’en suis sorti avec ma requête SQL :

      SELECT sub_email
      FROM spip_cm_subscribers
      LEFT JOIN spip_cm_lists_subscribers ON spip_cm_subscribers.sub_id = spip_cm_lists_subscribers.sub_id
      WHERE lsr_mode =1

      en supposant que la valeurs 1 de lsr_mode corresponde aux mails actifs (l’autre valeur est à 0 et ramène peu d’adresses)

      ensuite il suffit d’exporter le résultat de la requête dans un fichier CSV

    • Bonjour,

      lsr_mode correspond au mode de newsletter (HTML = 1 ou TEXTE = 0), pas aux mails actifs.

      françois

    • Merci Prad de ta réponse, mais peux-tu me dire quel variable et la valeur à utiliser pour sélectionner les mails actifs ?

    Répondre à ce message

  • 2
    ChristianD.

    Bonjour,

    Quelque chose qui ne m’est jamais arrivé avant.

    La lettre est bien partie, je le vois dans le rapport « aucun en attente, aucun en cours d’envoi, 51 envoyés ». Mais je n’ai rien réceptionné. C’est bloqué qq part mais je ne vois pas où.

    Comment faire pour débloquer ces courriers et où sont-ils ? Ou comment faire pour relancer le mails mais à partir de la date de mon précédent envoi ?

    Merci d’avance.

    • Peut-être sont-ils bloqués au niveau de votre hébergeur ?

    • christianD.

      Il s’est passé quelque chose et heureusement, tout est rentré dans l’ordre, maintenant les mails partent bien.

      Merci.

    Répondre à ce message

  • Bonjour à tous,

    Dans le squelette de ma newsletter, comment puis-je récupérer le N°  du message ?
    Il est stocké dans la table PST_ID.

    Merci pour votre aide,
    françois

    Répondre à ce message

  • Bonjour,

    J’ai installé Clevermail 3.0.6 sur un SPIP 3.0.5 et j’ai sur le formulaire d’inscription, lorsque le visiteur n’est pas loggué, le warning suivant :

    Warning : Illegal string offset ’email’ in /www/plugins/clevermail/trunk/formulaires/clevermail.php on line 8

    Quelqu’un saurait d’où vient le problème ?

    Merci !
    Abel

    Répondre à ce message

  • 1
    Delorimier

    J’utilise cet excellent plugin avec spip 2 sur deux sites, dans les paramètres, le champ « email return path » n’a aucun effet sur les messages envoyés. Suis-je le seul à avoir ce problème ?

    • Delorimier

      Ma solution temporaire consiste à insérer directement l’adresse voulue pour return-path dans la valeur $Sender du fichier class.phpmailer.php dans le plugin Facteur. Qu’est-ce qui empêche Clevermail de faire cela de lui-même ?

    Répondre à ce message

  • 1
    christianD.

    Bonjour,

    J’utilise Clevermail depuis pas mal d’années et suis maintenant en version 3.0.4 sous Spip 3.0.5. Mon dernier envoi a été une cata. Les mails sont bien partis mais une des adresses « admin » a été mise en copie. Résultat, près de 300 mails sont venus surcharger les messageries.

    J’ai beau chercher, je ne trouve pas où enlever l’adresse qui se met dans le cc des mails envoyés.

    Une piste pour empêcher cet envoi en copie ?

    Merci d’avance.

    • christianD.

      Bon, je me réponds moi-même. Je viens de trouver.

      C’est le plugin facteur qui fait des siennes. Une adresse mail avait été ajouté en cc.

      ’scusez du dérangement, M’sieurs, Dames.

    Répondre à ce message

  • Bonjour,

    j’ai un gros problème chez nexenservices,
    avant tout marchait bien mais lorsque je clique sur ’nouveau message’ rien ne se passe (à priori)
    ensuite j’ai le msg suivant dans la barre d’url :

    http://www.monsite.com/5/ecrire/?exec=clevermail_lists&err_lst=1&err_msg=erreur_contenu_vide#lst1

    j’ai vidé les caches, réinstallé une autre version de spip,

    version de spip 2.0.10
    version clervermail : 2.6.8

    je précise que tout marchait bien avant (7000 abonnés)

    hebergeur : nexenservices
    php 5

    dans un autre repertoire j’ai installé un autre spip (2.0.10) et clervermail 2.6.8 sur une base avec un seul article et c’est exactement pareil !!!

    merci de votre aide urgente !
    et joyeux noel et bonne fin du monde (demain)

    Répondre à ce message

  • Bonjour à tous,

    Rappel : CleverMail fonctionne très bien sous SPIP3, moyenant une petite modif :

    Cordialement,
    françois

    Répondre à ce message

Ajouter un commentaire

Qui êtes-vous ?

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