Zum Inhalt springen

Externe Links tracken?

Erstellt am 4. Juni 2006 · 4 Antworten · letzte Antwort am 29. Dezember 2006

Tags: Links, Frage

Cpt.​Hook ·

Hallo Freunde der Sonne,

gibt es eine Möglichkeit, mit der externe Links automatisch codiert werden, so dass ich sie tracken kann? Ich würde gern irgendwie einfach zählen, welcher Link nach Extern wie oft aufgerufen wurde. Zum Beispiel mit so nem Ding hier:

https://www.openbc.com/go/ext/3361171/4374280/company_url/UmFuZG9tSVYtnzOFk2mSgIfPpQie45WyIjKapdMSXepWlBsj+7/5/WWnaLj/c9WjqsXjfn33JBM=

oder so:

www.domainname.de/extern.php?ziel=www.nexst.de

Muss ich dafür wirklich jeden Link als "Seitentyp Externe URL" manuell anlegen oder kann ich die Links (wie z.B. beim Mailadressen-Spamschutz) automatisch parsen lassen?
Ich arbeite mit Typo3 4.0.

Grüße
Cpt.Hook

key cee ·
Cpt.Hook schrieb

Ich würde gern irgendwie einfach zählen, welcher Link nach Extern wie oft aufgerufen wurde.

versuch es doch einfach mal mit der Extension "ab_linklist"

Cpt.​Hook ·

Hallo key cee,

danke für den Tipp. Allerdings ging es mir um Links im Fließtext bzw. global alle Links nach extern, die ich gern mittels eines Redirects messen würde.

Grüße
Cpt. Hook

benep ·

Hi Captain,

ich suche seit ca. 4 Wochen nach solch einer Lösung.
Bisher ohne Erfolg. Mit den internen Möglichkeiten von Typo3 bin ich leider nicht weitergekommen, darum versuche ich gerade das Problem über eine userFunc zu lösen, nur leider wird entweder ganichts oder ArrayLinkname ausgegeben, obwohl ich in PHP nur Strings definiere.
Vielleicht hilft dir das ja ein bisserl weiter, bzw. vielleicht kann mir das jemand erklären:

Im Temlate-Setup:

includeLibs.myextlinks = fileadmin/funktionen/extlinks.php
tt_content.text.20.parseFunc.tags.link.typolink.userFunc = mylinks

extlinks.php:

<?
function mylinks($content,$conf)    {
    global $TSFE;

#    $finalTagParts['TYPE']
#    $finalTagParts['TAG']
#    $finalTagParts['url']
#    $finalTagParts['targetParams']
#    $finalTagParts['aTagParams']


#    if ($finalTagParts['TYPE'] == "url"){
#      $linktarget = "_blank";
#      $linkurl = "index.php?id=66&exturl=" . $finalTagParts['url'];
#    }else {
#      $linktarget="_self";
#      $linkurl = "$finalTagParts['url']"
#    }

#    return '<a href="'.$linkurl.'" target="'.$linktarget.'"'.$content["aTagParams"].'>';
     $content = "c_Link";
     return "r_Link";
}
?>
benep ·

Also jetzt hab ich es hinbekommen:

includeLibs.myextlinks = fileadmin/funktionen/extlinks.php
tt_content.text.20.parseFunc.tags.link.typolink.userFunc =user_mylinks->main

und

<?php
class user_mylinks {
var $cObj;// The backReference to the mother cObj object set at call time
/**
* Call it from a USER cObject with 'userFunc = user_randomImage->main_randomImage'
*/
  function main($finalTagParts)    {

#    $finalTagParts['TYPE']
#    $finalTagParts['TAG']
#    $finalTagParts['url']
#    $finalTagParts['targetParams']
#    $finalTagParts['aTagParams']

    $mytag = split("class=",$finalTagParts['TAG']);
	$myclass = substr($mytag[1], 0, -1);

    if ($finalTagParts['TYPE'] == "url"){
      $linktarget = "_blank";
      $linkurl = "index.php?id=142&exturl=" . $finalTagParts['url'];
    }else {
      $linktarget="_self";
      $linkurl = $finalTagParts['url'];
    }

    return '<a href="'.$linkurl.'" target="'.$linktarget.'" class='. $myclass .'>';
  }
}
?>

Leider funktionieren die 'aTagParams' wie es in der TSref steht nicht. Kann mir das jemand erklären?
Da ich eh nur die Klasse brauche hab ich das mit einem nicht sehr schönen Workaround gelöst.
Über einen richtigen Lösungsvorschlag würde ich mich sehr freuen.