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
Cpt.Hook schriebIch 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"
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
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";
}
?>
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.