Eines der vorangegangen Kapitel hat im Detail erklärt wie ein neuer HTML-Banner zum Inventar hinzugefügt wird. Es gibt dabei ein potenzielles Problem welches das Aufzeichnen der AdClicks etwas schwerer machen kann als nur den Code per copy & paste einzufügen. Die meisten HTML-Banner beinhalten hartkodierte Links zur Ziel-URL. Dies bringt den Browser dazu die Ziel-URL direkt, ohne den Aufzeichnungsmechanismus für AdClicks in phpAdsNew aufzurufen. Das ist der Grund warum dieses Kapitel geschrieben wurde. Es erklärt was phpAdsNew automatisch machen kann um das Aufzeichnen der AdClicks zu erleichtern und zeigt Ihnen wie Sie den HTML-Code manuell anpassen können falls die automatische Methode versagt.
Wenn Sie eine neuen HTML-Banner erstellen oder sich auf der Eigenschaftsseite eines vorhandenen HTML-Banners befinden, erlaubt Ihnen phpAdsNew die Option HTML verändern um AdClicks aufzuzeichnen zu aktivieren bzw. zu deaktivieren. Wenn diese Option aktiviert ist - Grundeinstellung - wird phpAdsNew versuchen alle hartkodierten URL's in entsprechende URL's umzuwandeln so das die Aufzeichnung von AdClicks ermöglicht wird. Für einfache HTML-Banner sollte das perfekt funktionieren, es kann aber bei komplizierteren HTML-Bannern passieren das sie nicht richtig erkannt werden, oder phpAdsNew verändert im schlimmsten Fall den Banner nicht korrekt. Der beste Weg um dies herauszufinden ist einen HTML-Banner mit der Option HTML für Aufzeichnung der AdClicks modifizieren hinzuzufügen. Wenn der Banner nicht richtg funktioniert, schalten Sie diese Option aus und versuchen Sie dann den HTML-Code manuell zu ändern. Später im Kapitel erfahren Sie wie der HTML-Code von Hand angepasst wird.
Bedenken Sie auch das wenn diese Option aktiviert ist phpAdsNew versuchen wird das Zielfenster jedes Links in den auf der Eigenschaftenseite des Banners angegeben zu ändern. Wenn auf der Eigenschaftenseite des Banners kein Zielfenster angegeben ist wird während der Auslieferung das Zielfenster benutzt welches im Ausliefercode hinterlegt ist. Wenn Sie mehrere Links mit jeweils eigenem Zielfenster in einem HTML-Banner haben und sie diese erhalten möchten sollten Sie den HTML-Code per Hand anpassen.
Text
Der einfachste HTML-Banner den Sie benutzen können ist einfacher Text,
mit oder ohne HTML-Tags wie <b> und <i> für's Layout.
Wenn Sie die Ziel-URL im Feld Ziel-URL
eintragen wird phpAdsNew automatisch einen Link auf die Ziel-URL setzen und
den AdClick aufzeichnen. Wenn Sie das Feld Ziel-URL
leer lassen, wird phpAdsNew den HTML-Code in keiner Weise ändern.
Links
Links ist der am meisten benutzte Typ von HTML-Bannern. Hartkodierte URL's
verhindern normalerweise das phpAdsNew AdClicks aufzeichnen kann, aber wenn
der Haken bei HTML für Aufzeichnung von
AdClicks modifizieren gesetzt ist versucht phpAdsNew diese hartkodierten Links
mit dem Code für die Aufzeichnung der AdClicks zu ersetzen. Wenn der HTML-Banner
mehrere Links zu verschiedenen Zielen beinhaltet ersetzt phpAdsNew alle Links
unter Beibehaltung der Ziel-URL's. phpAdsNew erkennt automatisch Links in
Ankern (a-Tag) und in Imagemaps (area-Tag).
Formulare
Wenn Ihr HTML-Banner Formulare beinhaltet kann phpAdsNew diese automatisch
anpassen um eine Aufzeichnung der AdClicks zu ermöglichen. Der Attribut
action des form-Tags wird ersetzt durch den Aufzeichnungsmechanismus von
phpAdsNew und die originale Ziel-URL als verstecktes Formularfeld eingebaut.
Alle Felder die nicht für die Funktion von phpAdsNew nötig sind
werden an die originale URL durchgereicht. phpAdsNew kennt die Methoden GET
und POST, für das Weiterleiten der Formularfelder zur Ziel-URL wird immer
GET benutzt. Die folgenden Feldnamen sollten Sie nicht verwenden weil
phpAdsNew sie intern gebraucht: bannerid, zoneid, source, dest, ismap, log
und cb.
Wie eben beschrieben kann phpAdsNew den Code des HTML-Banners automatisch anpassen so das AdClicks automatisch aufgezeichnet werden. In manchen Fällen ist der HTML-Banner zu kompliziert um phpAdsNew dies automatisch machen zu lassen. In diesem Fall müssen die Änderungen manuell gemacht werden. Um dies so einfach wie möglich zu gestalten stehen Ihnen eine Reihe Variablen zur Verfügung. Jede dieser Variablen wird während der Auslieferung durch den passenden Code ersetzt.
Targeturl
Die wichtigste Variable ist {targeturl} welche dazu verwendet wird die URL in
ihr entsprechendes Gegenstück, inklusive Aufzeichnungsmechanismus,
umzuwandeln. Es gibt drei verschiedene Arten diese Variable zu benutzen, jede mit
einem etwas anderem Ergebnis.
Wenn Sie {targeturl} irgendwo im HTML-Code benutzen, wird es durch das Gegenstück aus dem Feld Ziel-URL ersetzt. Weil das Feld Ziel-URL nur einen Link beinhalten kann funktioniert diese Methode nur wenn der HTML-Code nur eine hartkodierte URL oder mehrere Links mit derselben URL als Ziel enthält.
Wenn Sie mehrere Links mit verschiedenen hartkodierten Ziel-URL's haben, sind die folgenden zwei Varianten wahrscheinlich die einfachsten. Die erste besteht aus {targeturl:, der URL des Ziels und einer }, beispielweise: {targeturl:http://www.phpadsnew.com}. phpAdsNew ersetzt dann die Variable mit dem Gegenstück der URL die in der Variable angegeben ist. Als weitere Option ist es auch möglich den Quellenparameter, der zusammen mit dem AdClick geloggt wird, zu ändern indem sie einen weiteren Doppelpunkt mit der gewünschten Zeichenfolge an die URL hängen, beispielsweise: {targeturl:http://www.phpadsnew.com:first}. Falls im Ausliefercode bereits ein Quellenparameter definiert ist, wird dieser überschrieben, ausser der erste Buchstabe im Quellenparameter beginnt mit +. Wenn der Quellenparameter mit einem + beginnt, wird die Quelle aus der Variable an den bereits vorhandenen Quellenparameter im Ausliefer-Code angehängt. Dieser zusätzliche Quellenparameter ist besonders dann nützlich wenn der HTML-Banner mehrere Links beinhaltet und Sie wissen möchten wie oft jeder Link geklickt wurde. Dies funktioniert natürlich nur wenn die Option Die Parameter der Quelle werden bei der Bannerauslieferung protokolliert in den Statistikeinstellungen aktiviert ist.
Die zweite Variante die für mehrere Links mit unterschiedlichen Ziel-URL's ist einfacher als die ertse Variante, aber ihr fehlt die Option den Quellenparameter zu ändern. Bei dieser Variante setzen Sie die Zeichenfolge {targeturl=} vor die hartkodierte URL im HTML-Code, beispielsweise: {targeturl=}http://www.phpadsnew.com.
Die letzte Variante der Variable {targeturl} ist nützlich für einen anderen Typ HTML-Banner. Einige Ad-Server die von Bannernetzwerken eingesetzt werden erlauben die Auslieferung der URL mit ihrem Aufzeichnungsmechanismus für AdClicks, so können beide, das Bannernetzwerk und phpAdsNew den AdClick mitloggen. Wenn ein Besucher auf den Banner klickt wird er zum Aufzeichnungsmechanismus des Bannernetzwerkes weitergeleitet welches den Besucher zum Aufzeichnungsmechanismus von phpAdsNew weiterleitet welches den Besucher schlussendlich zur aktuellen Ziel-URL weiterleitet.
Zufall
Einige Ausliefercodes von Bannernetzwerken erfordern das in ihrem Ausliefercode
eine Zufallszahl eingefügt wird. Sollten Sie deren Ausliefercode als
HTML-Banner verwenden, müssen sie die Variable {random} einfügen.
Die Variable {random} wird mit einer achtstelligen Zufallszahl ersetzt.
Falls Sie eine Zufallszahl anderer Länge benötigen, können Sie
optional die Länge mit angeben, beispielsweise: {random:16} oder {random:4}.
Die Länge der Zufallszahl kann jede Zahl zwischen 1 und 32 sein.
Wenn Sie mehrere Zufallsvariablen in Ihrem HTML-Banner verwenden werden alle mit derselben Zufallszahl ersetzt. Es gibt eine Ausnahme: wenn Sie eine Zufallsvariable mit anderer Länge als der vorhergehenden angeben wird eine neue Zufallszahl erzeugt.
Zeitstempel
Die nächste Variable wird aus demselben Grund benutzt wie die Variable {random}.
Anstatt durch eine Zufallszahl, wird diese Variable durch die Anzahl der Sekunden die seit
Beginn der Unix-Epoche (1. Januar 1970) vergangen sind ersetzt.
Bannerid
Wenn Sie die ID des Banner, welcher im HTML-Code gezeigt wird, in die Aufzeichnung
mit einschliessen wollen benutzen Sie dafür die Variable {bannerid}.
Jedes Vorkommen von {bannerid} wird durch die richtige ID ersetzt.
Beispiele
Das folgende Beispiel demonstriert wie ein HTML-Banner der mehrere Links enthält
manuell geändert wird. Normalerweise werden solche Links automatisch umgewandelt,
Sie müsen es nur manuell machen wenn die Option HTML
zum Aufzeichen von AdClicks modifizieren deaktiviert ist. Jeder Link beinhaltet
seine originale Ziel-URL, wird aber durch den entsprechenden Aufzeichnungsmechanismus
ersetzt:
<a href=’{targeturl:http://www.foobar.com/}’>Main page</a>
<a href=’{targeturl:http://www.foobar.com/producta/}’>Product A</a>
<a href=’{targeturl:http://www.foobar.com/productb/}’>Product B</a>
Das nächste Beispiel hat viel Ähnlichkeit mit dem ersten, aber diesmal wird zusätzlich der Quellenparamter überschrieben. Das erlaubt es Ihnen mitzuzählen wie oft jeder Link geklickt wurde. Auf der Seite Entwicklung Banner sehen Sie standardmäßig die Gesamtperformance des Banners, aber Sie können die Quelle die Sie sehen wollen aus einer aufklappbaren Auswahlliste wählen.
<a href=’{targeturl:http://www.foobar.com/:main}’>Main page</a>
<a href=’{targeturl:http://www.foobar.com/producta/:a}’>Product A</a>
<a href=’{targeturl:http://www.foobar.com/productb/:b}’>Product B</a>
Es ist auch möglich mithilfe der Variablen {targeturl} URL's
zu ändern die nicht direkter Bestandteil eines Links sind. Im folgenden
Beispiel sind die Ziel-URL's als Werte in einer Auswahlliste hinterlegt.
Ein Javascript leitet den Besucher weiter wenn er eine Option in der
Auswahlliste auswählt.
<select onChange=’window.location=this.options[this.selectedIndex].value;’>
<option value=’{targeturl:http://www.phpadsnew.com/}’>phpAdsNew</option>
<option value=’{targeturl:http://www.phppgads.com/}’>phpPgAds</option>
<option value=’{targeturl:http://www.google.com/}’>Google</option>
</select>
Sogar Imagemaps können leicht mithilfe der Variablen {targeturl}
angepasst werden. Das funktioniert genauso gut wie bei normalen Links. Platzieren
Sie die Ziel-URL für jeden externen Link innerhalb der Variablen, das war's.
<img src=’http://www.phpadsnew.com/banner.gif’ width=’468’ height=’60’ usemap=’mymap’>
<map name=’mymap’>
<area shape=’rect’
coords=’0,0,234,60’
href=’{targeturl:http://www.phpadsnew.com}’>
<area shape=’rect’
coords=’235,0,468,60’
href=’{targeturl:http://www.phppgads.com}’>
</map>
phpAdsNew erlaubt es auch den HTML-Code des HTML-Banners in eine externe Datei auszulagern. Die HTML-Datei wird unter Verwendung eines Iframes in die Seite eingefügt. Erzeugen Sie einen neuen HTML-Banner und lassen Sie das Feld für den HTML-Code leer. Dann teilen Sie im Feld Ziel-URL phpAdsNew mit wo die externe HTML-Datei gefunden werden kann. Diese Option ist sinnvoll wenn Sie eine komplette Webseite oder eine Webseite als Banner anzeigen lassen wollen. Weil der aktuelle HTML-Code ausserhalb von phpAdsNew gespeichert ist hat er keinen Einfluss auf den Inhalt und kann die hartkodierten Links nicht in den eigenen Aufzeichnungsmechanismus umwandeln.
In einigen Fällen möchten Sie eventuell PHP-Code in Ihren HTML-Banner einbetten. Dies geschieht auf die gleiche Weise wie sonst auch PHP-Code in HTML eingebettet wird. PHP-Code beginnt mit <?php und endet mit ?>. Der Code zwischen den beiden Tags wird ausgeführt als wäre er in ein normales HTML-Dokument eingebettet.
<a href=’http://www.mybanner.com/click’>
<?php
echo "The current time is: ";
echo date ("H:i:s");
?>
</a>
Es gibt ein paar Ausnahmen: Es nicht möglich Funktionen oder Klassen zu definieren
und andere Dateien per include oder require einzubinden.
Die Funktionen print(), printf() funktionieren und können benutzt werden um
Zeichenfolgen innerhalb des HTML-Banners auszugeben. Es ist auch nicht möglich
Variablen und PHP-Code zu mischen, das folgende Beispiel funktioniert definitiv
nicht: {targeturl:http://www.phpadsnew.com/page.html?id=<?php $id ?>}.