TYPO3: Newsletter mit Direct Mail und Direct Mail Subscription

8. Februar 2007

TYPO3 Tutorials by undkonsorten Berlin

ACHTUNG: Dieses Tutorial bezieht sich nicht auf die aktuelle Version von DirectMail! Wir überarbeiten das demnächst.

Wohl zu kaum einer anderen Typo3-Extension gibt es so viele Tutorials und Forenbeiträge wie zu Direct Mail und Direct Mail Subscription. Und auch wenn es etliche gibt, die Direct Mail entnervt abgeschworen haben und stattdessen auf leistungsfähigere Lösungen setzen, für kleinere Newsletter, die ihre Adressen vor allem über die Webseite selbst sammeln, ist Direct Mail nach wie vor eine brauchbare Lösung. Deswegen von uns an dieser Stelle der Versuch, den vielen Anleitungen eine weitere – hoffentlich verständlichere – hinzuzufügen.

Denn mit ein bisschen Routine lässt sich innerhalb von nicht einmal einer Stunde eine sauber funktionierende Newsletterfunktion mit An- und Anmeldung erstellen.
Wichtig ist: Direct Mail baut auf TT_Address auf, auch wenn das nicht eindeutig dabeisteht. Dabei gilt: Erst TT_Address installieren, dann Direct Mail und dann Direct Mail Subscription. Wird die Reihenfolge missachtet, wird keine UID-Spalte in der TT-Adress-Datenbank angelegt und entsprechende Fehlermeldungen ausgegeben. Und die sind oft nur sehr garstig zu beheben (falls Sie wegen genau dieses Fehlers auf dieser Seite gelandet sind: versuchen Sie mittels phpMyAdmin die Spalte UID in der Tabelle tt_adress manuell anzulegen, wie das in diversen Foren empfohlen wird)

Nach der Installation und einem Reload erscheint der Menupunkt „Direct Mail“ unter “Template”. Jetzt einen SysOrdner anlegen, als Erweiterung „Direct Mail“ auswählen und verstecken ausschalten. Auf “Direct Mail” und den Ordner klicken und im Punkt Modulkonfiguration die Grundeinstellungen (Absender-Mailadresse etc.) vornehmen. Hier können auch Umleitungen für Links größer als 76 Zeichen erstellt werden (sonst kann es durch den Zeilenumbruch zu Problemen mit dem Bestätigungslink kommen). Eine Testliste mit dem Typ „Normale Liste“ anlegen und einen oder mehrere Empfänger eingeben, speichern und über „Quick Mail“ versuchen, ob die Mail wie gewünscht ankommt. Ist das der Fall, ist zumindest Direct Mail richtig konfiguriert. Jetzt die wirkliche Newsletterliste anlegen und als Typ „Von Seiten“ auswählen

Damit können zwar im Backend Usergruppen angelegt werden, an die dann ein Newsletter verschickt werden kann, die Möglichkeit, sich direkt auf der Webseite anzumelden, fehlt allerdings noch. Hierfür benötigen wir „Direct Mail Subscription“, das wir ja bereits installiert haben. Dieses einfach auf als Neuer Seiteninhalt > Plugin > Direct Mail Anmeldung einbinden. Die Newsletteranmeldung sollte jetzt auf der entsprechenden Seite korrekt angezeigt werden und auch eine Bestätigungsmail verschicken. Lediglich zwei Probleme sind noch zu lösen: erstens ist alles in englisch und zweitens funktioniert die Anmeldung für den Benutzer zwar, die Adressen verschwinden aber im nichts.

Die Sprachausgabe wird durch die Datei fe_admin_dmailsubscrip.tmpl gesteuert, die normalerweise im Extension-Verzeichnis liegt [typo3conf/ext/direct_mail_subscription/pi]. Ich lege sie nach dem Editieren aber immer im Fileadmin ab und legen den entsprechenden Pfad dorthin (siehe unten).

Standardmäßig ist in Direct Mail Subscription auch eine Möglichkeit vorgesehen, Newsletter verschiedener Kategorien zu abonnieren. Da ich das normalerweise nicht brauche, kommentiere ich die entsprechende Passage (ca. Zeile 160 – 180) aus. Da ich keine weitere Daten erheben will, nervt mich auch die „Profil bearbeiten“-Funktion nur. Auch diese kommentiere ich für gewöhnlich aus (###TEMPLATE_EDIT###).

Allerdings gibt es zwei Fehlermeldungen, die direkt per TypoScript definiert werden (siehe unten).

Als letzter Schritt muss jetzt noch ein Extension-Template angelegt werden (entweder auf der Seite, wo die Newsletteranmeldung stehen soll, oder auf einer dieser Seite übergeordneten Seite – z.B. wenn die Newsletteranmeldung von verschiedenen Seiten möglich sein soll.

Folgende Einträge müssen hier vorgenommen werden:

CONSTANTS

plugin.feadmin.dmailsubscription.pid = 10
plugin.feadmin.dmailsubscription.file.templateFile =
fileadmin/templates/ fe_admin_dmailsubscrip.tmpl

(wobei die PID die ID des DirectMail-Sysordner ist und
natürlich der Pfad eingefügt werden muss, in dem das Template liegt)

SETUP

plugin.feadmin.dmailsubscription.setfixed {
approve._FIELDLIST = uid,pid
delete._FIELDLIST = uid,pid}

plugin.feadmin.dmailsubscription {
evalErrors.email.uniqueLocal = Sie sind bereits für unseren Newsletter eingetragen!
evalErrors.email.email = Die Mailadresse ist ungültig! }

Jetzt sollte eigentlich alles funktionieren. Was mir noch nicht gefällt ist, dass die Mailadresse bei der Abmeldung nicht überprüft wird.

Anpassungen:

Möchte man sowohl html als auch plaintext Nachrichten verschicken. Muss man ein paar Sachen einstellen.

Zunächst muss unter Direct Mail->Modulkonfiguration-> Format des E-Mails (kann nichts dafür steht da so :-) das Format auf “Plain text and HTML” gestellt werden.

Plain text:

Weiter unten unter “Parameter, normaler Text” wird nun &type=99 eingegeben. Das sorgt später dafür, das aus der Newsletterseite einen Plain text Seite wird. Natürlich muss nun noch das “Direct Mail Plain text” Template im Root Template unter “Include static (from extensions)” geladen werden.

Das Template welches nun geladen wird wenn eine Seite mit &type=99 aufgerufen wird befindet sich unter: /typo3conf/ext/direct_mail/pi1/tx_directmail_pi1_plaintext.tmpl. Dieses sollte nun noch angepasst werden wie man es benötigt.

HTML:

Für die HTML Seite bietet es sich an in dem SysOrdner unter dem die Newsletterseiten erstellt werden ein Extension Template anzulegen und alles auszublenden was nicht im Newsletter sein soll, Menüs, Footer, etc. JavaScript sollte auch entfernt werden, ich für meinen Teil werde immer skeptisch wenn ich eine mail mit Java Script bekomme.

Das könnte dann so aussehen:

# JavaScript entfernen
config.removeDefaultJS = 1page {
10.marks.HEADER_NAVI >
10.marks.FOOTER >
10.marks.FOOTER =
}

Nun kann man schicke HTML und saubere Plain text Newsletter verschicken, je nach dem was der Abonent haben möchte.

Ach ja: möchte man nur HTML Mails verschicken sollten auch alle Abonenten HTML Mails erhalten können.

  1. plugin.feadmin.dmailsubscription {

  2. create.overrideValues.module_sys_dmail_html = 1

  3. }

Damit stellt man sicher das jeder der sich anmeldet automatisch HTML mails bekommt. Sprich “Empfange HTML Mails” ist angeklickt.

Weiterführende Links

Direct Mail Tutorial
Direct Mail Manual

Meta-Daten



16 Kommentare

Auch mal Kommentieren:

Kommentar



undkonsorten: Die Internet Agentur Berlin für TYPO3, WordPress, Suchmaschinenoptimierung (SEO)

undkonsorten GbR, Schönhauser Allee 53, 10437 Berlin, Tel: 030 - 20236354, undkonsorten - Internet Agentur Berlin: TYPO3, WordPress, SEO

Internet Agentur Berlin - Berliner Internet-Agentur