Klick Wrapper
Heute zur Feier des Tages etwas nützliches, ein Klick-Zähler
Wrapper! Ein was???? Ja, richtig: eine Abstraktionsebene für Klick-Zähle-Scripts.
So manchem dürfte es etwas nutzen. Stichworte: Suchmaschinen und Pagerank.
Der eigentliche Wrapper steckt in einer Java-Script Datei clickcountwrap.js.
clickcountwrap.js
/*
----------------------------
Klick-Zähler Wrapper (JS) v.1.0
Click-Counter Wrapper (JS) v.1.0
----------------------------
Funktioniert im IE,NETSCAPE,OPERA
----------------------------
Dieses Java-Script ist eine Zwischenschicht für Klick-Zähler
Scripte
unabhängig von der Programmiersprache.
This Java-Script is wrapper for existing click-count Scripts of
any programming language.
Normalerweise werden Klicks auf Links in folgender Weise gezählt:
1. Originallink: <a href="http://www.test.com">Test</a>
2. Umleiten des Links durch z.B. ein PHP-Script:
<a href="counter.php?link=http://www.test.com">Test</a>
3. Das Script counter.php Zählt den Klick und
speichert Daten
z.B. Referrer, Zeitpunkt,
Browser-Version, ...
4. Das Script leitet den User auf die Ziel-Seite
weiter.
Actually Clicks are counted in the following way:
1. Original Linking: <a href="http://www.test.com">Test</a>
2. Redirection of the Link through e.g. a
PHP-Script:
<a href="counter.php?link=http://www.test.com">Test</a>
3. The Script counter.php counts the click and
logs extra
information like referrer,
time, browser version, ...
4. The Script redirects the use to his
destination.
Mit diesem Script wird dieser Ablauf vereinfacht:
1. Auf der HTML-Seite, auf der die Klicks auf
Links gezählt werden
sollen wird ein Java-Script
Code unter dem letzten zu zählenden
Link eingefügt.
2. Beim Klick auf einen Link wird eine
Java-Script Funktion ausgeführt.
Diese Funktion lädt die
Url-des Scripts counter.php?link=http://www.test.com
unbemerkt als Bild-Datei.
3. Das Script counter.php Zählt den Klick und
speichert Daten
z.B. Referrer, Zeitpunkt,
Browser-Version, ...
4. Der Browser führt den Klick ganz normal aus.
This script simplifies this process in the following way:
1. A java-script code is put onto the html-page
the
link-clicks are to be counted.
2. When a click on a link occurs, a js-function
is executed and loads
hidden in the background the
script counter.php?link=http://www.test.com
3. The script logs all data as usual.
4. The browser executes the klick as usual.
Das bietet verschiedene Vorteile:
1. Keine Links der Form:
http://www.yourname.com/count.php?link=http://www.test.com.
2. Suchmaschinenfreundlich:
Die Suchmaschinen erkennen Links zu ausgehenden
Seiten.
Bei einigen Suchmaschinen (z.B. Google) ist das
ein wichtiges
Ranking-Kriterium.
3. Bestehende Link-Tracking Scripts können erhalten bleiben.
In der Konfiguration des Scripts können Sie die
URL des
aufzurufenden Scripts angeben.
This process offers several advantages:
1. No links of the form:
http://www.yourname.com/count.php?link=http://www.test.com.
2. Search engine friendly:
Several search engine recognize links to outgoing
sites
and base their ranking on it (e.g. Google)
3. Existing link-tracking scripts can be used and switched
without problems.
Anwendung:
Fügen Sie folgenden Code unterhalb des letzten Links dessen
Klicks sie zählen wollen ein:
<script src="clickcountwrap.js" type="text/javascript"></script>
Falls ein Link nicht gezählt werden soll fügen sie fügen
sie ein onMouseDown-Event ein:
vorher: <a href="test.html">nicht zaehlen</a>
nachher: <a href="test.html" onmousedown="void(0)">nicht
zaehlen</a>
Usage:
Add the following code below the last link to be counted:
<script src="clickcountwrap.js" type="text/javascript"></script>
If a link shouldn't be counted, just add a void js-onmousedown
event:
before: <a href="test.html">no count</a>
after: <a href="test.html" onmousedown="void(0)">no
count</a>
*/
/* ------------------ CONFIGURATION ------------------*/
// Die URL des bestehenden Link-Tracking Scripts
// Der geklickte Link wird hinten angefügt
// The URL to the existing Link-Tracking Script
// The clicked link is appended.
var conf_script = "http://www.pantufle.de/scripts/test/count.php?clink=";
/* ------------------ PROGRAM CODE -------------------*/
// Internet Explorer?
var ie = (document.all?true:false);
// Zählvariable
var i;
// The main click function that calls the script on a click
eval("function clk("+ (ie?"":"event") +") {
var url = event."+(ie?"srcElement":"target")+"; if
(document.images) { (new Image()).src=conf_script+escape(url); }}");
// Links ändern.
for (i=0; i<document.links.length; i++)
{
if (!document.links[i].onmousedown)
document.links[i].onmousedown = clk;
}
count.php
<?php
/*
Example Script for the Click-Counter Wrapper (JS)
v.1.0
Copyright http://www.pantufle.de
*/
$fp =
fopen("clicks.txt","a");
fwrite($fp,"Click
- ");
fwrite($fp,date("H:i:s
m.d.y")." -
"); //
Date
fwrite($fp,$_REQUEST["clink"]."
- "); //
Clicked Link
fwrite($fp,$HTTP_REFERER."n");
// on which page
fclose($fp);
?>
clickcountwrapper.html
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Click-Counter Wrapper (JS) v.1.0</title>
</head>
<body>
Dieser Link wird nicht gezählt:<br />
<a href="http://www.yahoo.de" target="_blank" onmousedown="void(0)">Yahoo
(No Count)</a> <br /><br />
Dieser Link wird gezählt:<br />
<a href="http://www.google.de" target="_blank">Google
(Count)</a> <br /><br />
Dieser Link wird auch gezählt:<br />
<a href="http://www.ebay.de" target="_blank">Ebay (Count)</a>
<br /><br />
<script src="http://www.pantufle.de/scripts/test/clickcountwrap.js"
type="text/javascript"></script>
Und dieser auch nicht gezählt:<br />
<a href="http://www.pantufle.de/scripts/test/clicks.txt" target="_blank">View
log file (No Count)</a><br />
</body>
</html>
|