0Localizzazione dei link Amazon Affiliati

Di tanto in tanto riferisco prodotti sui miei vari siti web, e di solito collegarli ad Amazon per chiunque sia interessato ad acquistarli. Molto tempo fa ho usato per collegare con collegare un affiliati Amazon, ma mai guadagnato nulla da esso come il mio tipico lettori è ben distribuita in tutto il mondo. Purtroppo Amazon non forniscono un modo per reindirizzare i visitatori al loro sito di Amazon locale, pur conservando ai pagamenti affiliati. Ci sono varie soluzioni là fuori, ma tutti quelli che ho trovato avuto problemi con loro, così ho sviluppato il mio.

I could develop it into a plugin for release if there is sufficient demand. Nel frattempo, il codice è sotto. You will need to make some modifications to make it match your site address and your amazon affiliates codes

<?php
/**
* Nome plugin: Reindirizzamento di affiliati Amazon
* URI del plugin: https://diymediahome.org/
* Descrizione: Reindirizza tutti i collegamenti affiliati di Amazon a un negozio Amazon locale a seconda della posizione dei visitatori.
* Versione: 1.0
* Autore: Jon P Scaife
* URI dell'autore: https://jonscaife.com
* Licenza: GPL12
*/
funzione process_link()
{
$debug = false;

//Rileva la posizione del visitatore da IP

se (è impostato($_SERVER["HTTP_CLIENT_IP"]))
{
$real_ip_address = $ _SERVER["HTTP_CLIENT_IP"];
}

se (è impostato($_SERVER["HTTP_X_FORWARDED_FOR"]))
{
$real_ip_address = $ _SERVER["HTTP_X_FORWARDED_FOR"];
}
altro
{
$real_ip_address = $ _SERVER["REMOTE_ADDR"];
}

funzione curl_get_contents($url)
{
$ch = curl_init();

curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $url);

$data = curl_exec($ch);
curl_close($ch);

restituisce $ dati;
}

$iptolocation = 'http://ip-api.com/php/ " . $real_ip_address;
$ipreply = @unserialize(curl_get_contents($iptolocalizzazione));
$iplocation = $ ipreply['prefisso internazionale'];

//Rileva la lingua del visitatore dal browser

$ browserlang = substr($_SERVER["HTTP_ACCEPT_LANGUAGE"], 0, 2);

//Rileva la lingua della pagina utilizzata dal visitatore

Se (è impostato($_OTTENERE['lang']))
{
$userlang = $ _GET['lang'];
}
altro
{
$userlang = "NEL";
}

//era un collegamento passato

Se (è impostato($_OTTENERE["addr"]))
{
$link_originale = $ _GET["addr"];
}

//Decidi il miglior sito Amazon in base ai dati rilevati

$ linkpartone = $ _GET["creativeASIN"];

interruttore ($iplocation)
{
Astuccio 'GB':
        $link ="https://www.amazon.co.uk/dp/".$linkpartone."/ref = nosim?tag = dimeho-21";
        rompere;
Astuccio 'IE':
        $link ="https://www.amazon.co.uk/dp/".$linkpartone."/ref = nosim?tag = dimeho-21";
rompere;
caso "USA":
        $link ="https://www.amazon.com/dp/".$linkpartone."/ref = nosim?tag = jonstech-20";
rompere;
Case "CA":
        $link ="https://www.amazon.ca/dp/".$linkpartone."/ref = nosim?tag = dimeho-20";
rompere;
caso "CN":
        $link ="https://www.amazon.cn/dp/".$linkpartone."/ref = nosim?tag =";
rompere;
caso "HK":
        $link ="https://www.amazon.cn/dp/".$linkpartone."/ref = nosim?tag =";
rompere;
caso 'MO':
        $link ="https://www.amazon.cn/dp/".$linkpartone."/ref = nosim?tag =";
rompere;
caso 'IN':
        $link ="https://www.amazon.in/dp/".$linkpartone."/ref = nosim?tag =";
rompere;
caso "JP":
        $link ="https://www.amazon.co.jp/dp/".$linkpartone."/ref = nosim?tag =";
rompere;
caso "FR":
        $link ="https://www.amazon.fr/dp/".$linkpartone."/ref = nosim?tag = Dimeho02-21";
rompere;
caso "CH":
        $link ="https://www.amazon.fr/dp/".$linkpartone."/ref = nosim?tag = Dimeho02-21";
rompere;
caso 'BE':
        $link ="https://www.amazon.fr/dp/".$linkpartone."/ref = nosim?tag = Dimeho02-21";
rompere;
caso "MC":
        $link ="https://www.amazon.fr/dp/".$linkpartone."/ref = nosim?tag = Dimeho02-21";
rompere;
Case "LU":
        $link ="https://www.amazon.fr/dp/".$linkpartone."/ref = nosim?tag = Dimeho02-21";
rompere;
case di ':
        $link ="https://www.amazon.de/dp/".$linkpartone."/ref = nosim?tag = dimeho0f-21";
rompere;
caso "CZ":
        $link ="https://www.amazon.de/dp/".$linkpartone."/ref = nosim?tag = dimeho0f-21";
rompere;
caso "IT":
        $link ="https://www.amazon.it/dp/".$linkpartone."/ref = nosim?tag = diymediahome-21";
rompere;
caso "NL":
        $link ="https://www.amazon.nl/dp/".$linkpartone."/ref = nosim?tag =";
rompere;
caso "ES":
        $link ="https://www.amazon.es/dp/".$linkpartone."/ref = nosim?tag = diymediahom05-21";
rompere;
caso "MX":
        $link ="https://www.amazon.com.mx/dp/".$linkpartone."/ref = nosim?tag =";
rompere;
casella "AU":
        $link ="https://www.amazon.com.au/dp/".$linkpartone."/ref = nosim?tag =";
rompere;
caso "BR":
        $link ="https://www.amazon.com.br/dp/".$linkpartone."/ref = nosim?tag =";
rompere;
difetto:
$link ="https://www.amazon.com/dp/".$linkpartone."/ref = nosim?tag = jonstech-20";
}


se($debug == true)
{
echo "1. $iplocation.  2. $browserlang.  3. $userlang.  4. $collegamento";
}
altro
{
testata('Posizione: '. $ link);
il();
}

}
se (è impostato($_OTTENERE["addr"])) processo_link();

//crea un filtro per sostituire i link amazon con il reindirizzamento interno inc un codice casuale per impedire la memorizzazione nella cache

funzione modify_amazon_affiliate_links($contenuto)
{
$content = str_replace('<a rel ="nofollow" href ="https://www.amazon ", '<copione>var ran_var = Math.random();</copione><uno stile ="sfondo: nessuno;" rel ="nofollow" onclick ="location.href=this.href+\'?ran=\'+ran_var;return false;" target ="_blank" href ="https://jonscaife.com/wp-content/plugins/amazon-affiliates-redirect.php?addr = ', $contenuto);
return str_replace('<a href ="https://www.amazon ", '<copione>var ran_var = Math.random();</copione><uno stile ="sfondo: nessuno;" rel ="nofollow" onclick ="location.href=this.href+\'?ran=\'+ran_var;return false;" target ="_blank" href ="https://jonscaife.com/wp-content/plugins/amazon-affiliates-redirect.php?addr = ', $contenuto);
}
add_filter( 'il contenuto', "modify_amazon_affiliate_links" )

?>

Appunto – the code is currently early draft. Funziona, but it doesn’t make use of some of the detection that it can do. It doesn’t have a settings page for the associate IDs, and it uses a hardcoded site address, rather than an invisible redirect. It DOES however use client-side javascript to generate a unique redirect url every time to prevent any caching systems from causing incorrect location detection.

Ha ottenuto alcuni pensieri del proprio? Concedetevi sotto commentando! Se si desidera iscriversi si prega di utilizzare il link iscriviti sul menu in alto a destra. È inoltre possibile condividere con i tuoi amici usando i link sottostanti sociali. Saluti.

lascia un commento