Per salvare l'indirizzo IP di un visitatore in Google Analytics, aggiungi questo codice PHP al tuo sito web, prima del codice tradizionale di Google Analytics.
<?php
if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
$ip=$_SERVER['HTTP_CLIENT_IP'];}
elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$ip=$_SERVER['HTTP_X_FORWARDED_FOR'];} else {
$ip=$_SERVER['REMOTE_ADDR'];}
?>
Accedi a Google Analytics, fai clic su Amministratore, vai alla proprietà desiderata, e nella colonna "Proprietà", fai clic su "Definizioni personalizzate > Dimensioni personalizzate". Fai clic su "Nuova dimensione personalizzata", aggiungi "ip" come nome e "sessione" come ambito. Crea la nuova dimensione. Più info su: https://support.google.com/analytics/answer/2709829?hl=en&topic=2709827&ctx=topic.
Utilizza questo codice di Google Analytics fra <head> e </head>, e sostituisci il parametro UA:
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-XXXXXXXX-X"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-XXXXXXXX-X', {
'custom_map': {'dimension1': 'ip'}
});
gtag('event', 'ip_address', {'ip': '<?=$ip;?>'});
</script>
Per vedere i dati:1) Crea un rapporto in "Rapporti personalizzati".
2) Scegli IP come prima dimensione, cui comparirà sotto "Dimensioni Personalizzate".
3) Scegli Sessioni come metrica.
Se non puoi utilizzare PHP, ancora puoi registrare l'indirizzo IP dei tuoi visitatori via Javascript. Comunque, dipenderai di un Javascript esterno che, anche se può funzionare bene adesso, nel futuro potrebbe falire. Il codice è:
<script type="text/javascript" src="http://l2.io/ip.js?var=myip"></script>
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-XXXXXXXX-X"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-XXXXXXXX-X', {
'custom_map': {'dimension1': 'ip'}
});
gtag('event', 'ip_address', {'ip': myip});
</script>
Grazie a Matt Holovach per questa soluzione!
1) Disattiva il plugin di Google Analytics plug-in, oppure, se è stato introdotto manualmente, lo rimuovi dal file headers.php.
2) Aggiungi questo codice al file functions.php:
<? function get_the_user_ip() {
if ( ! empty( $_SERVER['HTTP_CLIENT_IP'] ) ) {
//check ip from share internet
$ip = $_SERVER['HTTP_CLIENT_IP'];
} elseif ( ! empty( $_SERVER['HTTP_X_FORWARDED_FOR'] ) ) {
//to check ip is pass from proxy
$ip = $_SERVER['HTTP_X_FORWARDED_FOR'];
} else {
$ip = $_SERVER['REMOTE_ADDR'];
}
return apply_filters( 'wpb_get_ip', $ip );
}
add_shortcode('show_ip', 'get_the_user_ip');
add_action('wp_head', 'add_google_analytics');
function add_google_analytics() { ?>
<script async src="https://www.googletagmanager.com/gtag/js?id=UA-XXXXXXXX-X"></script>
<script>
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'UA-XXXXXXXX-X', {
'custom_map': {'dimension1': 'ip'}
});
gtag('event', 'ip_address', {'ip': '<?php echo get_the_user_ip();?>'});
</script>
<?php } ?>
Di solito questo script non funziona per i plugin di Analytics per Wordpress, poichè dei plugin di Wordpress normalmente non eseguono codice PHP. Se utilizzi Wordpress, rimuovi il plugin normale di Analytics e utilizza un plugin che permetta di utilizzare codice PHP, tale come Insert PHP.
Articolo interessante, ma come è possibile utilizzarlo con il nuovo codice di gtag? Grazie