Archiv für April 2011

HTML Werbemail erstellen- Teil 4

Montag, 04. April 2011

Das HTML besteht aus wenigen Teilen, aber hier sind Besonderheiten zu beachten:

1.) DOCTYPE – wir versuchen es mit:

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”
“http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>

2.) dem html und der language:

<html xmlns=”http://www.w3.org/1999/xhtml” xml:lang=”de-de” lang=”de-de” dir=”ltr”>

3.) den html header informationen inkl. IsoCode:

<head>
<META http-equiv=Content-Type content=”text/html; charset=iso-8859-1″ />
<title>SHOPNAME – Sonderaktion</title>

4.) Im header die CSS Definitionen:

<style type=”text/css”>
img.test            { margin: 0px; padding: 0px; border: 0px solid #B0B0B0; cursor: pointer;}
</style>

5.) denheader zumachen und den body starten … </head><body>

6.) wichtig für Freemailer: das CSS nochmal im Body in Kopie bringen:

<style type=”text/css”>
img.test            { margin: 0px; padding: 0px; border: 0px solid #B0B0B0; cursor: pointer;}
</style>

7.) das eigentliche HTML: <p>hallo ich bin ein Angebot</p>

8.) HTML beenden: “</body></html>”

Nun ist das eigentliche Problem, das Teil W§C valide zu machen, hier sollte man auf korrekten Code achten.

HTM Werbemail erstellen- Teil 3

Montag, 04. April 2011

Wie sieht nun eine solche Mail vom Body und Header her aus?

Die Mail wird per PHP zusammengesetzt und wird folgndermasse versendet:

if (mail($emailadresse,$subject,”",$inhalt,”-f $sendeadresse”))

Die $emailadresse ist klar, geht von anton@web.de bis zugvoegelfreunde-deutschland@gmx.de … das $subjekt ist dann sowas wie “neueste Technik zu kleinen Preis”. Zum $inhalt kommen wir gleich, nur das “-f” vor der $sendeadresse will erklärt sein. Sende ich per PHP oder PEARL oder sonstwas, dann istr die Sendeadresse für den Postfix IMMER der Dienst bzw der Besitzer der PHP-Datei, meistens dann sicher der Webserver selber. Läuft der Webserver also unter dem User “www” und der Gruppe “daemon”, dann sendet er als Benutzer www, aber auf dem Relay ist natürlich kein www unter der Domain als Benutzer mit einer Mailadresse hinterlegt, logo. Somit wird der Mailversand vom Relayserver oder bereits vom internen Postfix abgelehnt. Gebe ich ihm das Suffix “-f” für “force” mit, dann sendet er mit der Kennung “sendeadresse”, egal ob es diese gibt oder nicht.

Der Inhalt soll html sein, also rufe ich den HTML Mailinhalt auf, lasse diesen per PHP Befehl “ob_start();” in den Puffer mitschreiben und schließe den Puffer wieder mit “ob_end_flush ();”. Also:

ob_start();

echo “<html><body><p>Sonerangebote bei Shopname.de !!</p></body></html>” ;

$emailinhalt = ob_get_contents();

ob_end_flush ();

Damit habe ich bereits fast alles für “$inhalt” zusammen:

$boundary = strtoupper(md5(uniqid(time())));
$xtra = “From: SHOPNAME <”.$Email_Werbung.”>”;
$xtra .= “\nReturn-Path: <”.$Email_Werbung.”>”;
$xtra .= “\nX-Sender: “.$Email_Werbung.”";
$xtra .= “\nReply-To: “.$Email_Werbung.”";
$xtra .= “\nErrors-To: “.$Email_Werbung.”";
$xtra .= “\nMIME-Version: 1.0″;
$xtra .= “\nContent-Type: multipart/alternative; boundary=”.$boundary;
$xtra .= “\n\nThis is a multi-part message in MIME format”;
$xtra .= “\n–”.$boundary;
$xtra .= “\nContent-Type: text/html”;
$xtra .= “\nContent-Transfer-Encoding: 8bit”;
$xtra .= “\n\n”.$Emailvorlage;

$Email_Werbung ist natürlich die oben benannte Sendeadresse, also sowas wie “angebote@shopname.de”

weiter geht’s zu Teil 4, dem HTML Gerüst der Email, also dem eigentlichen Inhalt

HTML Werbemail erstellen – Teil 2

Montag, 04. April 2011

Vorab werden wir ein wenig in die Server Technik gehen, um die Rahmenbedingungen für einen sauberen Versand zu bekommen. Viele Mails scheitern an einem korrekt eingerichteten Mailserver – wir verwenden in dem Fall sendmail auf dem Relayserver und Postfix auf den angebundenen Backendservern. Als erstes muss natürlich der Sendmail als Relay korrekt arbeiten und Mails von den Backendservern annehmen. Die sendmail config dafür liegt bei linux Servern regulär unter /etc/mail/access, hier tragen wir die nötigen IP’s unserer Server ein, welche über diesen Sendmail Emails versenden:

IP_Slaveserver1       RELAY

IP_Slaveserver2       RELAY

die access speichern und den Dienst neu starten. Sollte jemand den sendemail per “sendmail.mc” flotter machen wollen oder die Queues verändern wollen, dann bitte die sendmail.cf per “m4 sendmail.mc > sendmail.cf” neu schreiben lassen und dann den Dienst beenden und neu starten.

Ok, aber was noch fehlt, sind die SPF Einträge in der Domain, also das SenderPolicyFramework. Prüfen kann man die bei Heise.de unter http://www.heise.de/netze/Netzwerk-Tools-475022.html und dann auf die DNS Abfrage. Hier einfach das TextLookup für die Domain abfragen und es sollte dann sowas ausgeben:

name: shopname.de
txtdata: v=spf1 mx ip4:111.222.333.444 ip4:222.333.444.555 a:backendserver1.shopname.de a:backendserver2.shopname.de -all

Denn so sollte der SPF Eintrag im Nameserver aussehen, ansonsten landet eine per RelayServer versendete Mail bei fast allen Freemailern im Spam, logo.

weiter geht’s zu Teil 3, dem Aufbau einer HTM Email

HMTL Werbemail erstellen – Teil 1

Montag, 04. April 2011

Ende 2008 haben wir für einen Kunden das gesamte Mailing “umgekrempelt”. Die Hauptarbeit bestand darin, den wöchentlichen Newsletter, welcher an registrierte Kunden versendet wird, komplett zu überarbeiten. Das steht nun 2011 wieder an und ich möchte hier meine Erfahrungen mitteilen. Das Mailing geht an etwa 250.000 Emailadressen und ist der HTML Part ist aktuell etwa 143k gross. Ziel ist es, einen größtmöglichen Teil der Kunden zu erreichen, sprich, der Emailinhalt muss für möglichst viele Benutzer sichtbar sein.

Daher wird der Inhalt der Mail neu überarbeitet, um bei möglichst wenig Empfängern im Spamordner zu landen.

Das letzte HTML Gerüst wurde fast nur auf ein Tabellelayout aufgebaut. Wir wollen versuchen, darauf zu verzichten, um per CSS die Datenmenge zu reduzieren. Die Mail besteht aus mehreren Elementen:

- Link zur HTML Kopie

- Kopf mit Logo

- Textzeile

- Artikeldarstellungen mit Preis als Hauptcontent

- Infoleiste rechts

- Footer mit Adress- & Impressumsdaten

Worauf müssen wir im Layout achten, um NICHT im Spam zu landen:

- keine H Überschriften, wenig <b> Tags , wenig auffällige Schriftfarbe- oder Größe

- vernünftiges Verhältnis von sichtbarem Content zu Quellcode

- kein Javascript

- keine Spamschlagwörter wie “billig, Achtung, riesig,  etc.”

- W3C & CSS valider Code

weiter geht’s zu Teil 2, den technischen Voraussetzungen