Rátanie klikov na externý odkaz s využitím javascriptu

Predčasom som narazil na problém, ako riešiť rátanie klikov na externé linky na mojej stránke. Nechcel som však upustiť od korektnej url adresy v odkaze a zároveň som sa nechcel zrieknuť aspoň orientačných štatistík.

Rátanie je teda realizované spôsobom, ktorý hneď kliknutí zmení url adresu odkazu na takú, aby zarátala klik, a následne je užívateľ presmerovaný na požadovanú adresu.

Teda preklik zadaný štandardne

<a href=http://www.google.sk onclick=”return changeUrl(this, 7);”>
    google.sk
</a>

Je rozšírený o časť onclick, zabezpečujúci po kliknutí, ale pred prechodom na adresu, zavolanie javascriptovej funkcie. Tá zabezpečí výmenu url adresy.

function changeUrl(obj, idUrl) {
    if ((obj) && (obj.href)) {
        obj.href =  '/redirect.php?idUrl='+idUrl;
    }
}

Po kliknutí sa adresa zmení na redirect.php, s parametrom id odkazu. Skript redirect.php zabezpečí iba zarátanie odkliku, a následné presmerovanie na požadovanú adresu.

Výhodou popisovaného spôsobu je nezmenená url adresa (dôležité najmä pre vyhľadávače a zároveň pre kopírovanie adries priamo zo stránky) a zároveň možnosť mať prehľad o klikateľnosti na jednotlivé odkazy.

Nevýhodou je nerátanie kliknutí užívateľov, ktorí nemajú podporovaný javascript. (cca 2%). Toto číslo sa však veľmi rýchlo znižuje (Už aj väčšina mobilných zariadení má implementovanú podporu javascriptu).