Je naviguais encore hier soir sur le blog d’un expert en prog. quand je me suis rappelé que je devais revoir une de mes fonctions SEO pour récupérer des choses intéressantes sur mes positionnements.
Retrouver les mots clés tapés sur les moteurs de recherche permet bien des choses, comme faire des nuages de tags optimisés par exemple.
Mais tout récupérer est encore mieux…Avec une liste des mots clés, le moteur de recherche utilisé, la page ou le visiteur vous a trouvé, etc…Autant de bonnes choses qui vous permettent d’orienter votre contenu pour booster un peu tout celà.
J’avais déjà une petite fonction PHP qui permettait de récupérer ses mots clés, moteur & page. Mais quelque peu buggé car comme vous le verrez dans les commentaires, si le visiteur demande 100 affichages par page comment on peut le faire sur Google ou Yahoo, la fonction perd vite les pédales et vous laissera penser que vous êtes sur la première page alors que le type a affiché 100 résultat…Résultat faussé, vous pouvez très bien être 99ème sur la requête.
C’est donc en vadrouillant sur le Blog de Jay (Vous auriez tord de ne pas allez y jeter un oeil) pour des recherches pour mon nouvel engin de guerre ( sur lequel tourne actuellement ce blog ) que j’ai repensé à cette fonction à modifier.
function analyse($ref)
{
$refe = parse_url($ref);
parse_str($refe['query'], $query);
$host = $refe['host'];
switch ($host)
{
//GOOGLE
case (strpos($host, '.google.') !== false):
$result = array(
'moteur' => 'google',
'search' => $query['q'],
'words' => explode(' ', trim($query['q'])),
'page' => (isset($query['start']))? ($query['start'] / 10) + 1 : 1,
'result/page' => (isset($query['num']))? $query['num']:10
);
break;
//Yahoo
case (strpos($host, '.yahoo.') !== false):
$result = array(
'moteur' => 'yahoo',
'search' => $query['p'],
'words' => explode(' ', trim($query['p'])),
'page' => (isset($query['b']))? (($query['b'] - 1) / 10) + 1 : 1,
'result/page' => (isset($query['n']))? $query['n']:10
);
break;
//Bing
case (strpos($host, '.bing.') !== false):
$result = array(
'moteur' => 'bing',
'search' => $query['q'],
'words' => explode(' ', trim($query['q'])),
'page' => (isset($query['first']))? (($query['first'] - 1) / 10) + 1 : 1,
'result/page' => 10
);
break;
}
return $result;
}
echo '
<pre>';
print_r (analyse('http://www.google.fr/search?aq=f&sourceid=chrome&ie=UTF-8&q=code+seo'));
print_r (analyse('http://www.google.fr/search?start=30&aq=f&sourceid=chrome&ie=UTF-8&q=black+hat'));
print_r (analyse('http://www.google.fr/search?aq=f&num=50&sourceid=chrome&ie=UTF-8&q=code+seo'));
print_r (analyse('http://fr.search.yahoo.com/search;_ylt=A7x9QXu2ymRNwn4AWwhjAQx.?p=seo&ei=UTF-8&fr=yfp-t-703&pstart=1&b=31'));
print_r (analyse('http://www.bing.com/search?q=seo&go=&filt=all&qs=n&sk=&sc=8-3&first=31&FORM=PERE2'));
print_r(analyse('http://fr.search.yahoo.com/search?n=40&ei=UTF-8&va_vt=any&vo_vt=any&ve_vt=any&vp_vt=any&vd=all&vst=0&vf=all&vm=p&fl=0&fr=yfp-t-703&p=seo&vs='));
echo '</pre>
';
Qui vous donnera un résulat de ce type:
Array ( [moteur] => google [search] => black hat [words] => Array ( [0] => black [1] => hat ) [page] => 4 [result/page] => 10 ) Array ( [moteur] => google [search] => code seo [words] => Array ( [0] => code [1] => seo ) [page] => 1 [result/page] => 50 ) Array ( [moteur] => yahoo [search] => seo [words] => Array ( [0] => seo ) [page] => 4 [result/page] => 10 )
Vous récupérez ainsi tout ce qu’il faut pour faire des statistiques correctes sur votre site Web. Et si vous avez de la ressource serveur à dépenser, vous avez déjà de quoi lancer un belle requête Curl pour trouver votre position exacte sur les moteurs.
Voili voilou, amusez-vous bien.
4 Commentaires sur cet article
Laisser un commentaireBonsoir, cette affaire de mots clés c’est déjà pas géré avec google analytics?
Par contre l’idée d’optimisé les nuages de tag grâce a sa , comment dire c’est sous mon nez mais on y pense pas automatiquement quand on apprend.
Posté le 6.5.2011 par Tchupa
Hello Tchupa, je me sers de cette fonction bien souvent pour gérer des automatismes...JE récupère une requête ? Je lance un générateur qui me créer une nouvelle page, ex: le type tombe ici en tapant fonction seo php, je peux très bien faire une page: fonction-seo-php.php quelque part pour optimiser ma longue traine.
Bon c'est pas la seule utilisation, tu peux en effet, par exemple, sur un blog WP, mettre à jour les tags d'un article...tu regagnes en visibilité.
Ensuite c'est savoir sur quelle page le visiteur avait trouvé mon site qui m'interessait le plus. ça évite une requête Curl et ça me donne une position approximative de ma page sur un mot clé ;)
Réponse faite le6.5.2011 par titomus
Allez hop dans la hotte de ma todo liste !
Décidément je me dirige vraiment vers la programmation curl et autre langage php !
merci
Sebastien
Posté le 26.6.2011 par depannage mac
Un moyen pour avoir ses positions à partir de son propre site? J’achète (enfin je prends
).
Je connaissais pas le site de Jay: sympa!
Posté le 13.2.2012 par axel