Affiliate Link maskieren

am 27.09.2010 - 11:05 Uhr in
Hallo,
gibt es für Drupal ein einfaches modul, ähnlich wie pretty link bei wordpress, mit dem man seinen affiliate link maskieren kann?
viele grüße
marco005
- Anmelden oder Registrieren um Kommentare zu schreiben
http://drupal.org/project/got
am 27.09.2010 - 12:21 Uhr
http://drupal.org/project/gotwo
Hallo Thoor, aha, vielen
am 27.09.2010 - 13:56 Uhr
Hallo Thoor,
aha, vielen Dank!
viele grüße
marco005
Thoor
am 19.02.2013 - 20:29 Uhr
http://drupal.org/project/gotwo
ich erlaube mir mal, den Thread nochmal auszugraben... sorry dafür ;)
Das Modul "gotwo" erwartet ja, dass die "a"-Tags durch "go"-Tags ersetzt werden. Das ist natürlich sehr mühsam, wenn man bereits viele Links auf der Seite hat. Gibt es eine Möglichkeit, dass die bereits vorhandenen Links ersetzt werden?
Danke.
Mit dem Modul "Global
am 20.02.2013 - 07:26 Uhr
Mit dem Modul "Global Redirect" kann man das z.B. machen ....
Da kann man, per Hand, einen neuen Redirect einrichten.
z.B. domain.com/eigener_pfad
Redirect zu: htttp.//www.affiliatelink.com/id/sowieso/bla/usw.
Bei dieser Lösung musst du aber auch schon vorhandene Affiliate-Links auf den neuen Pfad (eigener_pfad) ändern.
Ionit schrieb Mit dem Modul
am 20.02.2013 - 07:48 Uhr
Mit dem Modul "Global Redirect" kann man das z.B. machen ....
Da kann man, per Hand, einen neuen Redirect einrichten.
z.B. domain.com/eigener_pfad
Redirect zu: htttp.//www.affiliatelink.com/id/sowieso/bla/usw.
Bei dieser Lösung musst du aber auch schon vorhandene Affiliate-Links auf den neuen Pfad (eigener_pfad) ändern.
Danke, aber ich habe noch ein ganz anderes Problem...
ich benutze in einem Inhaltstyp das Feld/Modul: Link. welches die Links im Inhaltstyp anlegt und ich so keine Möglichkeit habe die Linksyntax zu ändern - und eigentlich möchte ich nicht jeden Link händisch anpacken, sondern generell Links einfügen, die dann automatisch maskiert werden.
Kaldi schrieb eigentlich
am 20.02.2013 - 11:57 Uhr
eigentlich möchte ich nicht jeden Link händisch anpacken, sondern generell Links einfügen, die dann automatisch maskiert werden.
Geht doch alles viel einfacher. Erstelle dir einen Ordner (z.Bsp. empfehlung) im Drupal Stammverzeichnis. Darin erstellst du für jeden Partner wiederum ein Verzeichnis mit einer index.php in die du eine Weiterleitung mit dem Affl. Parametern reinpackst. Also zum Beispiel:
/empfehlung/handy/index.php oder /empfehlung/kredit/index.php
Die jeweilige index.php sieht dann in etwa so aus:
<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://ad.zanox.com/ppc/?1754789C487008296T&ULP=[[solutions/internet-security.html]]");
header("Connection: close");
?>
Im Content deiner Seite verwendest du dann ganz normale interne Links wie z.Bsp. einen Textlink:
<a href="/empfehlung/handy" target="_blank" rel="nofollow">Hier kauf dir mal das geile Handy</a>
Der User sieht im Browser dann nur deinedomain.de/empfehlung/handy und du hast eine zentrale Verwaltung der Partner. Wenn sich mal was ändert, brauchst du nur die jeweilige index.php ändern. Gerade bei großen Affiliates händeln wir das immer so.
Das Verzeichnis /empfehlung würde ich für Bots noch rekursiv sperren. Google muss ja nicht alles mitkriegen;)
Wenn du hier sowieso auf der
am 20.02.2013 - 18:55 Uhr
Wenn du hier sowieso auf der Link-Field setzt, kannst du dir die Ausgabe recht einfach über das Modul [do:custom_formatters] anpassen. Hier würdest du dann mit dem vom gotwo Modul bereitgestellten Funktionen die Links selbst erzeugen.
Der Code des Custom Formatter müsste wie folgt ausschauen:
<?php
$output = '';
foreach ($variables['#items'] as $item) {
if(function_exists('_gotwo_get_url')) {
if (isset($item['query'])) {
$affilli_url = url( $item['url'], array('query' => $item['query']));
}
else {
$affilli_url = url( $item['url']);
}
$url = _gotwo_get_url($affilli_url, $item['title']);
// Remove trailing slash from url to make it work with drupal-l function.
$url = substr($url, 1);
}
else {
$url = $item['url'];
}
$output = l($item['title'], $url, array('attributes'=>array('rel'=>'nofollow', 'target'=>'_blank', 'title' =>$item['title'])));
}
return $output;
?>
Wichtig hierbei ist natürlich, dass du das [do:gotwo] Modul aktiviert hast, sonst steht dir die Funktion _gotwo_get_url nicht zur Verfügung.
Wie man mit [do:custom_formatters] umgeht, wird dir auf der Modulseite selbst beschrieben..
SteffenR