Newsletter Snippet - An- und Abmeldedialog für einen Newsletter

You will find information about Newsletter Snippet in english language at the All Module And Snippets Project (AMASP) and you may contact me at the Website Baker Module Forum.

Das Newsletter Snippet ergänzt das Massmail Modul um einen Frontend Dialog, über den sich die Besucher Ihrer Website für einen Newsletter eintragen können.

Das Newsletter Snippet sendet einen Aktivierungslink an die angegebene E-Mail Adresse und trägt die E-Mail Adresse nach erfolgter Aktivierung in die angegebene Massmail Group ein. Das Austragen aus dem Newsletter erfolgt auf die gleiche Weise: der Besucher gibt seine E-Mail Adresse an, existiert sie im Verteiler, sendet das Newsletter Snippet einen Bestätigungslink an die angegebene Adresse, nach Bestätigung wird die E-Mail Adresse aus der Massmail Group ausgetragen.

Newsletter Snippet

Die Verwaltung und der Versand der Newsletter an die Abonnenten erfolgt über das Massmail Modul.

Das Massmail Modul wurde Johannes Holzer, U. Christoffersen und R. Smith entwickelt und unter GPL bereitgestellt. Sie finden es im Website Baker Addons Repository und können es dort herunterladen.

Das Massmail Modul muss installiert sein, damit das Newsletter Snippet funktioniert.

Wenn Sie Fragen zum Massmail Modul haben, wenden Sie sich bitte an die Autoren, Sie erreichen sie über das Website Baker Module Forum.

Code Snippets oder "Programm Schnipsel" sind Programme bzw. Funktionen, die in Website Baker eingebunden werden und global zur Verfügung stehen. Snippets sind ideal, wenn Funktionen nicht auf eine einzelne Seite beschränkt sein sollen, sie lassen sich in Templates einbinden oder als Abschnitt vom Typ Code in beliebigen Seiten integrieren.

Nach der Installation können Sie das Newsletter Snippet an der gewünschten Stelle einbinden: 


<?php
  if (function_exists('newsletter_info')) {
    newsletter_info('Newsletter','newsletter@ralf-hertsch.de',true,false);
  }
?>

Mit if (function_exists('newsletter_info')) {...} überprüfen Sie, ob das Newsletter Snippet tatsächlich installiert ist, newsletter_info() ist der eigentliche Funktionsaufruf.

For use with Website BakerDie Funktion verfügt über mehrere Parameter:

newsletter_info($massmailGroup, $fromEMail, $textOnly=true, $infoAdmin=false)

  • $massmailGroup ist die Gruppe in Massmail, in die das Newsletter Snippet Abonnenten einträgt. Diese Gruppe muss bereits existieren, sonst meldet Ihnen das Newsletter Snippet einen Fehler. Im Beispiel oben lautet die Gruppe 'Newsletter'.
  • $fromEMail ist die E-Mail Adresse, die das Newsletter Snippet als Absender für die Aktivierungsmails verwendet, im Beispiel lautet die Adresse 'newsletter@ralf-hertsch.de'.
  • $textOnly kann true oder false sein. Ist true gesetzt, versendet das Newsletter Snippet E-Mails im TEXT Format, ist dagegen false gesetzt, versendet das Newsletter Snippet E-Mails im Mulitpart Modus (HTML und TEXT).
  • $infoAdmin kann true oder false sein. Ist true gesetzt, versendet das Newsletter Snippet Statusmails an die E-Mail Adresse $fromEMail

Es gibt verschiedene Möglichkeiten, das Newsletter Snippet einzubinden:

Einbindung als einzelne Seite

Schreibmaschinenletter

Diese Möglichkeit das Newsletter Snippet als einzelne Seite einzubinden bietet sich an, wenn Sie den Dialog für die An- und Abmeldung zu Ihrem Newsletter auf einer einzelnen Seite haben möchten.

Die Vorteile hierbei sind, dass Sie den Newsletter in ihr Menu aufnehmen können und an verschiedenen Stellen innerhalb Ihrer Website, insbesondere wenn es inhaltlich passt, einen Link auf den Newsletter setzen können.

Hierzu erstellen Sie eine neue Seite oder einen neuen Abschnitt vom Typ Code innerhalb einer bereits bestehenden Seite und geben im Textfeld den Funktionsaufruf für das Newsletter Snippet ein: 


if (function_exists('newsletter_info')) {
  newsletter_info('Newsletter','newsletter@ralf-hertsch.de',true,false);  
}

Einbindung in das Template 

Schreibmaschinenletter

Die Möglichkeit das Newsletter Snippet in das Template einzubinden bietet sich an, wenn sich die Dialogbox für die An- und Abmeldung für den Newsletter auf allen Seiten befinden soll.

Hierzu müssen Sie die index.php Ihres Templates bearbeiten. Öffnen Sie die Datei und fügen Sie an der gewünschten Stelle im Template den Funktionsaufruf für das Newsletter Snippet ein:

  if (function_exists('newsletter_info')) {
    newsletter_info('Newsletter','newsletter@ralf-hertsch.de',true,false);  }
?>

Beim Template Round, dass mit Website Baker mitgeliefert wird, ist ein ganz guter Platz auf der linken Seite unterhalb des Menus und der Suchen Box ab Zeile 107 in der index.php


<?php if(SHOW_SEARCH) { ?>
  <form name="search" action="" method="get">
    <table cellpadding="0" cellspacing="0" border="0" width="150" align="center" style="margin-top: 10px;">
      <tr>
        <td class="border">
          <img src="/menu_top.gif" border="0" alt="" />
        </td>
      </tr>
      <tr>
        <td class="login">
          <input type="text" name="string" />
        </td>
      </tr>
      <tr>
        <td class="login">
          <input type="submit" name="submit" value="" />
        </td>
      </tr>
      <tr>
        <td class="border">
          <img src="/menu_bottom.gif" border="0" alt="" />
        </td>
      </tr>
    </table>
  </form>
<?php } ?>
<?php
  if (function_exists('newsletter_info')) {
    newsletter_info('Newsletter','newsletter@ralf-hertsch.de',true,false);  
  }
?>

Formatierung des Newsletter Snippet 

Newsletter Beispiel

Die Formatierung des Newsletter Snippet erfolgt über die screen.css des Templates, das Sie verwenden.

Das Newsletter Snippet gibt die Dialogbox innerhalb eines Block aus: 

<div class="newsletter">
[...]
</div>

Neben der Klasse newsletter wird lediglich eine weitere, newsletter_error, für die Ausgabe von Fehlern verwendet.

Um eine Newsletter Anmeldung wie in der nebenstehenden Abbildung zu erreichen, stehen für die Formatierung des Newsletter Snippet die folgenden Anweisungen in der verwendeten screen.css:


.newsletter {   
  width:180px;   
  margin:50px 0 0 10px;   
  padding: 50px 5px 5px 5px;   
  background-image: url(newsletter-bkgnd-2.jpg);   
  background-repeat: no-repeat;   
  background-position: top left;   
  color: #fff;   
  background-color: transparent;   
  font-size: 8pt;   
  } 
.newsletter input[type=text], 
.newsletter input[type=submit] {   
  width: 100%;   
  color: #fff;   
  background-color: transparent;   
  border: 1px solid #fff;   
  } 
.newsletter input:hover {   
  color: #000;   
  background-color: #fff;   
  } 
.newsletter input:focus {   
  color: #000;   
  background-color: #fff;   
  }

Anpassen des Newsletter Snippet

Das Newsletter Snippet läßt sich auch über die Sprachdateien an die eigenen Vorstellungen anpassen.

Wollen Sie z.B. den Einleitungssatz "Mein Newsletter informiert Sie in unregelmäßigen Abständen über neue oder aktualisierte Website Baker Module." ändern, öffnen Sie die Sprachdatei DE.php im Verzeichnis /modules/newsletter/languages mit einem beliebigen Editor und suchen Sie nach dem Eintrag:


 
define('nl_text_intro', 'Mein <strong>Newsletter</strong> informiert Sie in unregelm&auml;&szlig;igen Abst&auml;nden &uuml;ber neue oder aktualisierte WebsiteBaker Module.');
 

Open Source ist immer ein gute Idee!

Für Sie als Anwender bedeutet Open Source, dass Sie Software mit dem Quellcode erhalten und dadurch Änderungen oder Ergänzungen durchführen können.

Open Source erhalten Sie häufig kostenfrei.

Es wird gerne übersehen

... dass der zeitliche Aufwand für die Erstellung und Pflege von Software erheblich ist.

Bei allem Engagement muss ich mir meinen Lebensunterhalt verdienen und meine begrenzten Ressourcen einteilen.

Ihre Unterstützung hilft mir bei der stetigen Entwicklung und Pflege von Open Source Software.

Ralf Hertsch

Führen Sie die gewünschten Änderungen durch und speichern Sie die Datei wieder auf dem Server.

Anmerkungen:

  • Texte die in den Dialogen verwendet werden beginnen mit nl_text_, Texte die in den E-Mails verwendet werden beginnen mit nl_mail_ und die Betreffzeilen der E-Mails beginnen mit nl_subject_
  • Bei den nl_text_ Texten können Sie beliebige HTML Formatierungen verwenden, achten Sie darauf daß Sie die Platzhalter %s nicht überschreiben und maskieren Sie Umlaute, z.B. ü -> &uuml;
  • Bei den nl_mail_ und nl_subject_ Texten sollten Sie keinerlei Formatierungen verwenden. Es hat sich in der Praxis bewährt bei E-Mail Benachrichtigungen Umlaute zu umschreiben um Darstellungsfehler beim Anwender zu vermeiden, z.B. ä -> ae. Einen Zeilenumbruch erhalten Sie durch Einfügen von \r\n im laufenden Text.

Â

Bei allen Fragen, Fehlermeldungen und Verbesserungsvorschlägen nehmen Sie bitte über das Website Baker Forum (Deutsch) oder per E-Mail Kontakt mit mir auf.

Vielen Dank für Ihr Interesse!

Ralf Hertsch

Download

Die aktuelle Version finden Sie auf der Download Seite.

Kommentare

08.07.2010

Martin Rieger

Hallo Herr Hertsch,
herzlichen Dank für das Modul und die Beschreibung. Funktioniert einwandfrei!
Der Links zum Download vom Massmail Modul auf dieser Seite scheinen allerdings nicht mehr aktuell zu sein.

Ralf Hertsch: Vielen Dank für den Hinweis, der Link ist korrigiert! -rh

31.05.2010

Abenaa

Hallo Ralf,

ich habe das Newsletter Snippet in Verbindung mit dem Massmail Modul schon erfolgreich angewendet. Nun bekomme ich aber auf einer neuen Seite beim Versenden die Fehlermeldung "Fehler!! Die Benutzermail kann nicht versendet werden." Leider habe ich im Forum keine zufriedenstellenden Antworten oder Lösungen gefunden. Wenn man wenigstens wüsste, WARUM die Mail nicht versendet werden kann? Gibt es da irgendwelche Erfahrungen diesbezüglich?

Vielen Dank.

Ralf Hertsch: Dieses Problem taucht leider immer wieder mal auf, ohne dass dafür eindeutige Ursachen festgestellt werden können - ich kann dir hier keine befriedigende Antwort geben. Der Support für das Newsletter Snippet wird demnächst eingestellt, weil ich mit KeepInTouch eine leistungsfähigere und flexiblere Lösung zur Verfügung stelle.

14.05.2010

Karl Lemke

Hallo Herr Ralf Hertsch,
Ich habe versucht in einer Seite Ihr Newsletter, so wie beschrieben ein zufügen.
Es Klappt auch soweit.
Mann kann sich An und Abmelden.
Nur woher bekomme ich die angemeldten Adressen zu sehen, damit wir wissen wo unsere News geschickt oder nicht mehr geschikt werden sollen.
Danke
../Karl Lemke

Ralf Hertsch: Sie sehen die Abonnenten im Massmail Modul, wo sie durch das Newsletter Snippet eingetragen werden.

13.04.2010

Mark

schade, dass massmail & newsletter für wb 2.8.x nicht mehr funktioniert.

Ralf Hertsch: Beide funktionieren unter WB 2.8.x problemlos. Zur Zeit laufen die Tests für KeepInTouch, das wesentlich mehr kann und in Kürze freigegeben werden soll.

13.02.2010

Markus Hörr

Hallo gibt es eine anleitung für newsletter Modul.

Danke, Markus Hörr

Ralf Hertsch: Sie meinen für das Massmail Modul? Meines Wissens leider nicht. Gruß Ralf Hertsch

30.07.2009

Peter

Vielen Dank ....
... dafür, dass Sie diese ausführlichen Infos hier zur Verfügung gestellt haben. Die Sucherei in Foren ist eine tolle Sache. Steht man aber ganz am Anfang, ist das komprimierte Wissen hier doch deutlich einfacher zu verarbeiten. Um allen anderen Mut zu machen ... als Neuling in Sachen HTML und CSS ist mir nach 1 h Bastelei auch die Positionierung in ALL CSS nach meinen Wünschen gelungen. Das tollste ... es funktioniert! Bisher verwende ich (noch) mit NetObjects Fusion 7.5, aber diese Funktion hier gibt mir den endgültigen Anstoß zur Umstellung auf Websitebaker. Es wird eh Zeit mal alles zu überarbeiten. Da ist das genau die rechte Situation. Viele Grüße aus Sachsen nach Berlin - Peter

07.06.2009

Viktor Giger

Alle Massmail-Module verwendbar?
Hallo für den Einsatz von Newsletter ist ja das Massmail-Modul notwendig... ist nur das ursprüngliche Massmail-Modul geeignet oder funktionieren auch die Module: - Massmail with FCKEditor | und | - Massmail with Tiny_MCE Besten Dank für die Antwort

07.03.2009

Andreas

Bitte Anelting genauer machen
Seit Stunden quäle ich mit dem Einbau des Newsletter-Sniipes und Massmail. Ich komme nicht zurecht, da die Details fehlen. Wo muss man Massmail einbinden? Bei mir erscheint einfach nur Niichts. mfg Andreas

07.10.2008

sfischer

Danke!
danke für die gute anleitung!!!

04.10.2008

Peter Hofmann

Einsicht in die Anmeldung
Ein sehr großes Lob an diesen Snippet und an Sie Herr Hertsch! Ich finde Sie haben den Einbau sehr gut beschrieben und machen somit vielen Usern von WB das Leben leichter. Mir persönlich stellt sich nur noch die Frage wie ich die angemeldeten Email-Adressen einsehen kann? Könnten Sie Iher Seite vielleicht noch um diesen Part erweitern!