Mautic for Developers: connecting Drupal content to Mautic email marketing

Repost 14/04/2023 We built a plugin to allow you to automatically send personalized Mautic emails with content straight from your Drupal CMS. The benefits are obvious: saving time, avoiding manual errors, and ensuring a consistent experience for your end users.

Drupal (CMS) en Mautic (software voor marketingautomatisatie) combineren, is een uitstekende keuze om je omnichannel digitale ervaringen te beheren. Veel organisaties beheren hun content al in Drupal. Maar die content manueel overzetten naar Mautic, bijvoorbeeld voor een nieuwsbrief, kost te veel tijd en moeite. Nu niet meer. We bouwden een plugin waarmee je automatisch gepersonaliseerde Mautic-e-mails verstuurt, met content rechtstreeks uit je Drupal CMS. De voordelen liggen voor de hand: tijd besparen, manuele fouten vermijden en een consistente ervaring voor je eindgebruikers.

In deze blog leg ik uit welke plugin we bouwden, en hoe je die in je organisatie kunt gebruiken.

  1. Consistente contentervaringen op je websites en in je e-mails
  2. De functionele plugin voor marketeers
  3. Een voorbeeld uit de praktijk: Inagro
  4. De technische plugin voor developers

1. Een consistente contentervaring op je website en in je e-mails

Een belangrijk element in je volledige communicatie is consistente personalisatie van content op je website en in je e-mails. Waarom? Om je gebruikers een consistente ervaring te geven, ongeacht het contactpunt dat ze gebruiken. Maar tegelijk wil je dat je marketingteam die content zo efficiënt mogelijk beheert, om het volgende te vermijden:

  • Dubbele content (een keer in je CMS, een keer in Mautic)
  • Het risico op fouten, typfouten en verkeerde links
  • Manuele tussenkomsten om terugkerende e-mails te versturen
  • Zoveel mogelijk taken herhalen, in plaats van automatisering te gebruiken

Een ander voordeel is het gebruiksgemak voor je redacteurs. Ze moeten maar één systeem leren gebruiken: het CRM, want de content wordt automatisch naar Mautic gekopieerd. Daarnaast gebruik je de geavanceerde functies van Drupal, die in Mautic niet beschikbaar zijn. Bijvoorbeeld de mediabibliotheek, waaruit je dezelfde bestanden kunt hergebruiken voor je website en je e-mailmarketing, moderatietools, geavanceerde toegangsrechten voor gebruikers…

2. De functionele plugin voor marketeers

Om ervoor te zorgen dat je een consistente contentervaring kunt bieden op al je digitale kanalen, bouwden we de External Content Plugin.

Wat doet de plugin?

Ze laat marketeers toe om automatisch gepersonaliseerde nieuwsupdates te versturen met Mautic. De content van de e-mails komt rechtstreeks uit het Drupal CMS. Dat kan zonder dat developers telkens opnieuw betrokken moeten worden, en zonder manuele acties in Mautic.

Hoe werkt de plugin?

  1. Maak content in Drupal: nieuws, blogs en andere contenttypes
  2. Tag die contenttypes met interessecategorieën
  3. Gebruik dezelfde interessecategorieën in je inschrijvingsproces voor de nieuwsbrief
  4. Koppel je Drupal aan je Mautic via een API en een Mautic-plugin
  5. Voeg e-mailtokens toe aan je e-mails, om de juiste gepersonaliseerde content rechtstreeks uit je Drupal op te nemen, en automatiseer het versturen van e-mails

Een iets diepgaandere uitleg

Op je Drupal-website heb je meestal nieuwsartikels, blogs, producten, events en gelijkaardige contenttypes, gekoppeld aan bepaalde tags of interesses. Wanneer bezoekers zich inschrijven voor je nieuwsbrieven (via een Mautic-formulier), kun je hen naar hun interesses vragen, om hen relevante en gepersonaliseerde updates te sturen. De categorieën op je inschrijvingsformulier zijn dezelfde als de tags van de content in je Drupal. Je Drupal-site wordt uitgebreid met een API die de nieuwste content naar de External Content Plugin stuurt. De bedrijfslogica zit in die API. Die bepaalt welke content naar Mautic gaat, en voor welk publiek. De External Content Plugin moet in Mautic geactiveerd en met de Drupal-API verbonden worden. Deze plugin koppelt de content die van de Drupal-API komt aan de e-mailtokens.

Met tokens voeg je dynamische content toe aan de e-mail. Marketeers kunnen een of meerdere versies van het token toevoegen in de content van de e-mail, op elke plek waar ze dynamische content willen. Ze kunnen het token dynamisch maken. Zo kunnen ze per e-mailcampagne gepersonaliseerde content aanpassen of nieuwe maken, zonder dat er een developer aan te pas komt.

Tot slot kun je het versturen van e-mails met Mautic automatiseren zoals je wilt. Je kunt dagelijks, wekelijks of maandelijks versturen. Of zelfs een Mautic Preference Center gebruiken, om nieuwsupdates te versturen met de frequentie die elke ontvanger zelf kiest. Et voilà, je bent klaar. Na de eerste installatie krijgen je bezoekers automatisch gepersonaliseerde nieuwsupdates, zonder enige manuele tussenkomst.

3. Een voorbeeld uit de praktijk: Inagro

De External Content Plugin is niet zomaar een concept op hoog niveau. We gebruikten hem al voor onze klanten. Voor Inagro bouwden we bijvoorbeeld een volledig autonoom, gepersonaliseerd e-mailsysteem met Drupal en Mautic. Inagro voegt agenda-items en algemene en gepersonaliseerde nieuwsitems toe aan zijn wekelijkse nieuwsupdates. De redacteurs verliezen geen tijd met het opzetten van al die unieke e-mails. Dankzij de volledige automatisering krijgt elke gebruiker een hypergepersonaliseerde wekelijkse nieuwsbrief, afgestemd op zijn profiel.

4. De technische plugin voor developers

De functies van de plugin

De 3 onderdelen van de plugin

1. Configuratieformulier

Een configuratieformulier waarin je de API-instellingen en -gegevens instelt. Die worden gebruikt wanneer we de API oproepen. Je kunt het volgende instellen:

  • Endpoint: de URL van het API-endpoint.
  • Authenticatie: geen (Basic Authentication, Bearer Token of Any Advanced Authorization Header)
  • Methode: GET of POST. Door verzoeken te kunnen POSTen, kun je heel geavanceerde resultaten opvragen, in plaats van alleen GET-verzoeken met een beperkte lengte van queryparameters.
  • Heb je een testomgeving voor de website en/of Mautic, dan kun je de URL van de API meteen of per omgeving aanpassen.
2. ExternalContentEmailSubscriber:

Dit is een Event Subscriber die geactiveerd wordt wanneer een e-mail verstuurd wordt:

  • Wanneer een e-mail verstuurd wordt, wordt de content van de e-mail gescand op het gebruik van ons eigen token {external_content:[key=value]}
  • Wordt het token gevonden, dan wordt onze zelfgebouwde dienst “TokenReplacer” opgeroepen
3. TokenReplacer

Die vertaalt het token dat in de e-mail gebruikt wordt (ingesteld door de marketeer) naar een verzoek dat de API begrijpt. Het antwoord van de API wordt teruggegeven, om in de e-mail weergegeven te worden.

  • Het gebruikte e-mailtoken wordt opgesplitst per key-value-paar.
  • Elk paar wordt gecontroleerd op gereserveerde keys. Dat zijn specifieke instellingen om het verzoek naar de server te sturen. Ze omvatten het endpoint en de methode (GET / POST)
  • De overige paren worden omgezet in filters die naar het API-endpoint gestuurd worden. Die kunnen vast ingesteld zijn of opgehaald worden uit contactvelden in Mautic. Zo kan elke e-mail gevuld worden met sterk gepersonaliseerde content, afhankelijk van de waarden die in het contactprofiel in Mautic bewaard worden.
  • Het volledige verzoek wordt naar de API gestuurd. Wanneer we een antwoord krijgen, bewaren we het in de cache. De HTML-output van het antwoord wordt in de e-mail weergegeven, voor die naar het contact verstuurd wordt.

Buiten de scope van deze plugin

  • De synchronisatie van de voorkeuren van een contact van een externe bron naar Mautic
  • Elke vorm van filtering of verwerking van externe data. Dat betekent dat de externe bron volledig verantwoordelijk is voor de verwerking van het inkomende verzoek van deze plugin.

Het verschil tussen deze plugin en de ingebouwde Dynamic Web Content (DWC) van Mautic

  • Met Dynamic Web Content (DWC) kun je gepersonaliseerde content insluiten in een externe webpagina.
  • Deze plugin stuurt een gepersonaliseerd verzoek naar een extern endpoint. Het gepersonaliseerde antwoord wordt daarna weergegeven in de e-mail die naar het contact verstuurd wordt.