Pour faire suite à mon précédent article sur les listes de diffusion avec Mailchimp, voici maintenant comment configurer les modules Drupal associés.
Tout d'abord, il est bien entendu nécessaire d'installer les modules Mailchimp pour Drupal. Une fois le répertoire mailchimp placé dans votre hiérarchie de répertoires, naviguez vers la page d'activation des modules et activez tous les modules. Cette action va installer les modules mailchimp, mailchimp lists, mailchimp campaigns et mailchimp activity. Je n'ai pas poussé les investigations sur le dernier module, ce sont les 3 premiers qui nous intéressent dans cette suite d'articles.
La seconde étape est de créer une clé d'API pour lier le module mailchimp à l'API proposée par Mailchimp. Sans cette clé, impossible de mettre en place quoi que ce soit. Il faut se connecter à son compte Mailchimp, puis sélectionner "Account settings". Le menu secondaire propose un bouton "Extras" avec un sous-menu "API keys". Cliquez sur le bouton "Create a key" pour que le système génère une clé d'API. Copiez la clé, puis naviguez sur /admin/config/services/mailchimp, la configuration Mailchimp de Drupal. Vous aurez un champ "Mailchimp API key" dans lequel vous pourrez coller la clé d'API récupérée. Validez le formulaire, vous êtes prêt à utiliser les modules mailchimp de Drupal.
Maintenant que vous êtes connecté à l'API, vous pouvez récupérer les listes d'abonnés que vous avez créé sur le site Mailchimp. Naviguez sur /admin/config/services/mailchimp/lists, qui correspond au listing des "listes de diffusion" que vous avez sur votre site. A priori, cette liste est vide. Un bouton au sommet de la page nommé "Refresh lists from Mailchimp" permet de récupérer les listes d'abonnés. Cliquez dessus, validez le formulaire. Normalement, vous verrez le nom de vos listes d'abonnés apparaitre en haut du listing :
Vous pouvez voir au sommet de la liste, en rouge, que Mailchimp à renvoyé la liste d'abonnés "testing list". L'API fait donc son travail correctement.
Maintenant, une petite explication sur les listes de diffusion dans Drupal. Il ne faut pas confondre une liste d'abonnés et une liste de diffusion. La liste d'abonnés, c'est une liste créée sur le site Mailchimp, qui va stocker les données de tous les gens qui vont s'inscrire à cette liste. La liste de diffusion, quant à elle, c'est l'outil qui va vous permettre de créer un "type" de lettre d'information. Prenons un exemple concret pour illustrer le principe : votre site propose des biens immobiliers. Vous désirez offrir à vos abonnés la possibilité de s'inscrire à différentes newsletters :
- Les nouveaux biens en vente / location
- Les produits phares
- Les actions spéciales
Pour ce faire, vous allez créer 3 listes de diffusion. Chaque utilisateur aura la possibilité de s'inscrire à une ou plusieurs listes afin de recevoir des informations spécifiques. Il sera bien entendu nécessaire de créer 3 listes d'abonnés également, pour ne pas envoyer une campagne "Produits phares" à un utilisateur intéressé uniquement par les actions spéciales.
Les listes d'abonnés (Mailchimp) et les listes de diffusion (Drupal) sont intimement liées, mais dans Drupal, une liste de diffusion va permettre de générer un bloc d'inscription ainsi qu'un formulaire disponible sur le profil utilisateur pour que l'utilisateur puisse gérer son ou ses abonnements.
Passons maintenant à la liste de diffusion à proprement dit. Le point réellement intéressant va résider dans les champs associés. Rappelez-vous : dans le premier article, le but défini était de faire en sorte que les utilisateurs puissent s'inscrire à une liste de diffusion en indiquant différentes données personnelles : email, nom, prénom, adresse et numéro de téléphone. J'avais indiqué comment créer ces différents champs dans une liste d'abonnés sur le site Mailchimp. Il va maintenant être nécessaire de lier ces données à nos utilisateurs Drupal.
Je ne rentrerais pas dans le détail sur la mise en place des différents champs, mais sachez que j'ai utilisé :
Le module "location" pour tout ce qui concerne l'adresse : adresse, numéro postal, localité, département / canton, pays
Le module "profile2" pour les autres champs, à savoir : nom, prénom, société, téléphone. J'ai créé un nouveau type de profil et j'y ai ajouté les champs nécessaires.
Tous ces champs sont requis lors de l'inscription de l'utilisateur sur le site. Ainsi, je peux faire en sorte d'avoir les données nécessaire pour tout utilisateur qui veut s'abonner à ma liste d'abonnés.
Revenons maintenant sur notre liste de diffusion. Sur /admin/config/services/mailchimp/lists, vous trouvez un bouton "Add a list" au sommet de la page. Cliquez dessus pour créer une nouvelle liste de diffusion. Dans cette liste, vous trouvez divers champs à remplir, des cases à cocher pour décider de la configuration de votre liste. La partie qui nous intéresse particulièrement est celle concernant les champs liés :
Comme vous le constaterez sur l'image précédente, les champs que j'avais défini pour ma liste d'abonnés sont disponibles dans ma liste de diffusion, et je peux y associer des champs Drupal. Rien de bien compliqué : je choisi les champs Drupal correspondants. Le reste de la configuration vous incombe. Vous pourrez tester à loisir les différentes possibilités. Pour ma part, j'ai choisi de laisser les utilisateurs anonymes s'abonner à cette liste, et j'ai également coché les utilisateurs authentifiés, afin de faire en sorte que n'importe qui puisse s'inscrire et recevoir mes lettres d'information.
Une fois votre liste validée, naviguez sur /admin/structure/block, la gestion des blocs dans Drupal. Vous constaterez qu'un nouveau bloc est disponible :
Le sous-module "mailchimp lists" vient de générer un bloc d'inscription à la liste de diffusion. Ce bloc va permettre aux utilisateurs de pouvoir s'inscrire à la liste en indiquant les données nécessaires. Voici à quoi peut ressembler ce bloc après un peu de theming :
Comme vous pouvez le voir, le bloc affiche les différents champs obligatoires qui avaient été configurés à la base dans la liste d'abonnés sur le site Mailchimp (le champ téléphone n'était pas un champ obligatoire).
Dans le cas d'un utilisateur authentifié sur le site, le bloc affichera simplement une case à cocher permettant à l'utilisateur de s'inscrire ou se désinscrire de la liste de diffusion :
Dans ce cas, l'utilisateur aura juste à cocher la case et soumettre le formulaire pour indiquer qu'il veut s'inscrire à la liste de diffusion. Comme les données nécessaires sont des champs existants dans le profil utilisateur, et que l'utilisateur a du remplir ces champs lors de son inscription, Drupal possède tout le nécessaire pour abonner les utilisateurs authentifiés sans leur demander d'autres informations.
L'utilisateur authentifié a également accès à un formulaire du même type, regroupant toutes les listes de diffusion qu'il a à sa disposition, directement à partir de son profil.
Voilà ! Après avoir appris à configurer Mailchimp pour gérer vos listes d'abonnés, vous savez maintenant configurer Drupal pour gérer vos listes de diffusion et proposer aux visiteurs et utilisateurs de votre site de s'abonner à vos lettres d'information.
Dans le prochain article, nous verrons, après une phase initiale de configuration, comment créer et envoyer des campagnes à vos abonnés, le tout sans avoir besoin de se connecter à l'administration du site Mailchimp.
Restez connectés, la suite au prochain épisode !