Créer un pixel de suivi
https://chierchia.fr/blog/2016/03/creer-un-pixel-de-suiviCes dernières semaines, j’ai essentiellement travaillé sur la conception d’un cookie/pixel de suivi et le traitement des informations récupérées, pour en faire des tableaux statistiques et autres graphiques de fréquentation par la suite. Je vous parlerai peut-être de mon expérience avec la librairie JavaScript C3.js dans un prochain article.
L’intérêt d’un tel dispositif est de pouvoir « tracker » ce qu’un visiteur fait lorsqu’il parcours votre site Web, ou encore de savoir si une campagne emailing a bien été ouverte.
Pixel de suivi
Le code partagé ici est un exemple basique est ne reflète pas exactement la solution que j’ai utilisé pour tracker les visiteurs de nos sites Internet, mais le principe reste le même.
<?php
// On récupère d'abord l'adresse IP du visiteur
$ip = !empty($_SERVER['HTTP_CLIENT_IP']) ? $_SERVER['HTTP_CLIENT_IP'] : (!empty($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR']);
// Navigateur utilisé
$browser = $_SERVER['HTTP_USER_AGENT'];
// URL de la page visité
$url = $_SERVER['REQUEST_URI'];
// Enregistrement dans un fichier de log
$handle = fopen('log.txt', 'a+');
$log_data = date('Y-m-d H:i:s') . ' -- ' . $ip . ' -- ' . $brower . ' -- '. $url . "\r\n";
fwrite($handle, $log_data);
fclose($handle);
// Création du pixel de suivi
$pixel = imagecreate(1,1);
$pixel = imagecolorallocatealpha($pixel, 255, 255, 255, 0);
// Enfin, on affiche le pixel de suivi
header('Content-Type: image/png');
imagepng($pixel);
imagedestroy($pixel)
?>
Intégrer le pixel de suivi
Maintenant que notre image de 1 pixel sur 1 pixel est créée, il ne reste plus qu’à l’insérer dans le code HTML des pages que l’on souhaite suivre. Une simple balise img
juste avant la balise </body>
suffira !
<img src="pixel.php" width="1" height="1" />
Eh voilà ! J’espère que ce petit bout de code vous aura plu. Si vous avez d’autres solutions, n’hésitez pas à les partager dans les commentaires.
Tchô !
0 Webmentions
No webmentions were found.
- {% for webmention in webmentions %}
- {{ webmention.content }} {% endfor %}
No bookmarks were found.
{% endif %}- {% for webmention in webmentions %}
- {% endfor %}
No likes were found.
{% endif %}- {% for webmention in webmentions %}
- {{ webmention.content }} {% endfor %}
No links were found.
{% endif %}- {% for webmention in webmentions %}
- {{ webmention.title }} {% endfor %}
No posts were found.
{% endif %}- {% for webmention in webmentions %}
- {{ webmention.content }} {% endfor %}
No replies were found.
{% endif %}- {% for webmention in webmentions %}
- {% endfor %}
No reposts were found.
{% endif %}- {% for webmention in webmentions %}
- {% endfor %}
No RSVPs were found.
{% endif %}- {% for webmention in webmentions %}
-
{% if webmention.author %} {% endif %}{% if webmention.content %} {{ webmention.content }} {% else %} {{ webmention.title }} {% endif %} {% endfor %}
No webmentions were found.
{% endif %}