D’ou vient le visiteur ? Une question a laquelle beaucoup de Webmaster aimerait répondre.
Voici une petite fonction sympas pour retrouver facilement le mot clé, le moteur de recherche et la page de provenance d’un visiteur sur un site:
function analyse($ref)
{
$refe = parse_url($ref);
parse_str($refe['query'], $query);
$host = $refe['host'];
switch ($host){
//GOOGLE
case (strpos($host, '.google.') !== false):
$moteur = "Google";
$mot_cle = $query['q'];
$page = $query['start'];
if (!$page){
$page = 1;
} else {
$page = ($page / 10) + 1;
}
break;
//Yahoo
case (strpos($host, '.yahoo.') !== false):
$moteur = "Yahoo";
$mot_cle = $query['p'];
$page = $query['b'];
if (!$page){
$page = 1;
} else {
$page = (($page - 1) / 10) + 1;
}
break;
//Bing
case (strpos($host, '.bing.') !== false):
$moteur = "Bing";
$mot_cle = $query['q'];
$page = $query['first'];
if (!$page){
$page = 1;
} else {
$page = (($page - 1) / 10) + 1;
}
break;
//ALTAVISTA
case (strpos($host, '.altavista.') !== false):
$moteur = "Altavista";
$mot_cle = $query['q'];
$page = $query['stq'];
if (!$page){
$page = 1;
} else {
$page = ($page / 10) + 1;
}
break;
//LYCOS
case (strpos($host, '.lycos.') !== false):
$moteur = "Lycos";
$mot_cle = $query['query'];
$page = $query['page2'];
if (!$page){
/**
* particularité de lycos qui affiche un page2=0
* au lieu de ne rien afficher
*
*/
$page = "1";
} else {
$page = $page + 1;
}
break;
//ALLTHEWEB
case (strpos($host, '.alltheweb.') !== false):
$moteur = "All The Web";
$mot_cle = $query['q'];
$page = $query['o'];
if (!$page){
$page = 1;
} else {
$page = ($page / 10) + 1;
}
break;
}
return array(
'moteur' => stripslashes($moteur) ,
'mot' => stripslashes($mot_cle) ,
'page' => stripslashes($page)
);
}
Utilisation :
$result = analyse($_SERVER['HTTP_REFERER']); echo $result['moteur'] . '<br />'; echo $result['mot'] . '<br />'; echo $result['page'] . '<br />';
#1 by Fenetres PVC on 23 août 2010 - 21 h 59 min
merci ..j’étais en train de m’embêter à refaire ce script !!
bien vu de récupérer la page !!!
#2 by virago 535 on 23 septembre 2010 - 19 h 18 min
@fenetres PVC: j’ai l’impression que la fonction ne revoie pas toujours le bon numéro de page
(souvent la page N°1 alors que si je vérifie sur google c’est pas la page N°1)
Ou peut être ça tient compte de la configuration utilisateur de google : affichage 10 20 ou 100 résultats
#3 by admin on 24 septembre 2010 - 8 h 43 min
Je pense effectivement à la personnalisation du navigateur oui. Il est alors possible de voir si ton site est fréquenté fréquemment par ce visiteur si tu vois une trop grosse différence.
#4 by Papagaio on 8 octobre 2010 - 13 h 49 min
Merci pour le code, c’est sympa
#5 by sac en kit on 21 février 2011 - 19 h 10 min
merci pour le script
effectivement le numero de page est ps toujours coherent sur google
c’est peut être du à la « geolocalisation » que fait google non ??