La technique web au service du suivi SEO

Preview:

DESCRIPTION

Nous nous sommes habitués à utiliser Google Analytics comme référent en termes de suivi statistiques et de référencement mais dans les faits, les langages courants comme Javascript ou PHP nous permettent d'effectuer des suivis approfondis et pratiques. Nous allons donc mettre les mains dans le code et trouver des solutions pour obtenir nos propres suivis SEO afin de parfaire notre référencement d'ensemble. Si vous n'êtes pas à l'aise avec la technique web (PHP notamment), je n'hésiterai à ralentir le pas pour que vous compreniez bien les principales lignes de code...

Citation preview

La technique web au service du référencement

Mathieu Chartier

Sommaire

1. Les moteurs et plates-formes à suivre

2. La diversité des critères SEO

3. Les méthodes de suivi classiques

4. Le suivi par le code

1.1 – Quels moteurs suivre ?

• Le référencement ne se limite pas à Google !– Le trafic provient de différents outils de recherche.– Suivre tous les bons outils !

• Variétés géographiques– Chine : Baidu leader, Bing en soutien (Google loin derrière)– Japon : Yahoo! Japan devant Google– Corée du Sud : Naver (environ 72% de PdM) devant Daum– Russie / Ukraine : Yandex leader devant Google (30% de PdM)– République Tchèque : Google leader talonné par Seznam– Etats-Unis : Google leader (60% de PdM) devant Bing/Yahoo! (30% de PdM à

eux deux)

1.2 – Quelles plates-formes suivre ?

• Les moteurs de recherche ne sont plus seuls…– Un visiteur provient de différentes sources d’origine

• Variétés de plates-formes– Réseaux sociaux : Facebook, Twitter, Google+, Linkedin, Instagram,

Viadeo, SoundCloud, YouTube, TripAdvisor…

– App store

– Digg-like / Curation : Digg, Scoop.it, StumbleUpon, Scoopad, Scoopeo, S2M, Tapemoi, Vazizoo, Buzzef…

– Comparateurs : Merchant center, Hotel finder, carbeo.com, LeLynx, assurland, Twenga, le Guide, Kelkoo, Quiestlemoinscher, Liligo…

– Annuaires

1.3 – Comment se positionner ?

• Variété de supports mais une concurrence toujours plus rude !– Les plates-formes se multiplient mais les sites concurrents aussi…

• Le suivi prend tout son rôle ici !

• Chaque outil de recherche dispose de ses propres critères de positionnement– Parfois aucun, parfois beaucoup, mais souvent inconnus !

• C’est pour cette raison que les moteurs de recherche restent privilégiés, car la SEO a fait ses preuves depuis des années.

– Les moteurs de recherche prédominent car ils touchent tout le monde, mais les techniques SEO sont de plus en plus partagées…

Sommaire

1. Les moteurs et plates-formes à suivre

2. La diversité des critères SEO

3. Les méthodes de suivi classiques

4. Le suivi par le code

2.1 – Quelques critères SEO

• Des critères de référencement toujours plus nombreux et complexes à mettre en œuvre– Sémantisation des contenus

• Variété du vocabulaire et des champs lexicaux• codes HTML et rich snippets (<hn>, <title>…)

– FreshRank (fréquence de mise à jour des pages)– PageSpeed (liste de critères d’accélération des pages web)– PageRank (+ ex-TrustRank) / BrowseRank-StaticRank– Sécurisation des sites web (migration vers HTTPS)– Historique et ancienneté (pages, nom de domaine, liens…)– Poids du site (nombre de pages)– Critères comportementaux (rebond, durée des visites…)

2.2 – De futurs critères à suivre ?

• Les évolutions des plates-formes et moteurs de recherche vont imposer la création de nouveaux critères– Notation des internautes (déjà en place sur les App Store)– AuthorRank (rien ne prouve qu’il est déjà activé !)– Sémantisation HTML 5– Responsive Design ou site mobile– Impact plus fort des Trending Topics– Favorisation des sites en HTTP/2.0 (basé sur le module SPDY)

2.3 – Suivi des facteurs SEO

• Les spécialistes effectuent de nombreux tests– Difficile de suivre chaque facteur tant leur poids et leur impact

est variable– Difficile d’assurer de bons résultats lors des tests

• Le suivi doit être porté sur l’essentiel, à savoir le trafic et le positionnement !– Effectuer un audit SEO apporte souvent un plus…

Sommaire

1. Les moteurs et plates-formes à suivre

2. La diversité des critères SEO

3. Les méthodes de suivi classiques

4. Le suivi par le code

3.1 – Méthodes de suivi

• Le suivi du référencement s’effectue en plusieurs étapes– Audit de sites web (souvent plus utile qu’il n’y parait…)– Suivi du référencement (indexation des pages)– Suivi du positionnement (classement dans les SERP et outils)– Analyse des données

• Toutes ne sont pas toujours nécessaires selon nos objectifs !

• Plusieurs outils permettent de suivre la SEO d’un site– Logiciels et outils de suivi « clés en main »– Journaux de bords (logs) des hébergeurs– Outils statistiques et suivi manuel– Logiciels ou programmes (codes) « fait maison »

3.2 – Logiciels et outils

• Suivi du référencement– Voir comme un robot : SEO Chat, Small SEO Tools, Google

Webmaster Tools…– Suivre l’indexation : CrawlTrack, SEO Administrator…

• Suivi du positionnement– Une foultitude d’outils…

• SeeUrank, Positeo, Myposeo, SEO Soft, AgentWebRanking, Rank Tracker, Ranks.fr, SEMrush, GammaSEOTools, SEO Toolkit, Allorank

• Des résultats variables et parfois incohérents selon les outils…

3.3 – Logiciels et outils (suite)

• Suivi des contenus et audit– Plusieurs logiciels incontournables !

• Alyze.info, Integrity (pour Mac), Outiref, Screaming Frog, Yakaferci, Yooda Match Density…

• Gunning Fox Index  http://gunning-fog-index.com– Mesure de la qualité des contenus et de la langue

3.4 – Logiciels et outils (suite)

• Suivi des backlinks et du netlinking– Mesurer son PageRank sans la Google Toolbar (faussée)

• 2 types d’outils– Les webmaster tools (conseillé car plus « justes »)

• Ils fournissent des données détaillées mais leur fréquence de mise à jour est un peu « lente »…

– Les outils externes• AdvancedLinkManager, Ahrefs, Backlink Watch, Explorer, Link

Diagnosis, Link Examiner, Majestic SEO, Open Site Explorer…

3.5 – Journaux de bord

• Suivi du référencement et des robots– Les hébergeurs mettent à disposition des interfaces de suivi (souvent

AwStats ou l’ex-Urchin) qui donnent des informations…

• Intérêt des Webmaster Tools (Bing, Google, Yandex…)– Suivi des pages indexées via le sitemap.xml– Suivi des erreurs 404– Voir comme les spiders

3.6 – Suivi manuel

• Parfois, seules nos mains peuvent nous aider…– Suivi de l’indexation et de la fréquence de passage des robots

• Les statistiques de serveur manquent de précision, tout comme certains outils…

• Utiliser la commande site:URL_DU_SITE– Elle permet de comptabiliser les pages indexées et surtout de

les recenser (étape majeure pour connaître les pages retenues)– Elle donne accès d’un seul coup à toutes les versions de cache

des pages web• Utile pour découvrir la fréquence de passage relative à chaque page !

3.7 – Google Analytics

• Analytics est l’outil le plus connu pour un suivi complet– Suivi des robots (si paramétré)– Suivi du trafic détaillé (par page, par pays…)– Suivi du positionnement (si paramétré)– Suivi des URL referers (adresses d’origine de la visite)– Analyse des liens et des contenus (« Comportement » « Analyse des

pages web)

• Possibilités multiples– Tableaux de bord personnalisé– Filtres adaptés à la SEO– Tracking complet (variables _utm, _TrackTrans, _TrackEvent…)

3.8 – Google Analytics (suite)

• Plusieurs techniques utiles…– Exclure l’adresse IP des visiteurs courants (salariés, associés…)

3.9 – Google Analytics (suite)

• Suivre le positionnement par mot clé « not provided »

N.B. : possibilité d’adapter le filtre pour chaque page, ce qui permet de savoir quelles pages ressortent mieux que d’autres…

3.10 – Google Analytics (suite)

• Création de tableaux de bords personnalisés pour la SEO– Possibilité d’adapter des variantes pour suivre

• Exemple d’un rapport de suivi des pages de destination (landing pages) en fonction des requêtes tapées (très intéressant si couplé au filtre de suivi du positionnement)

Sommaire

1. Les moteurs et plates-formes à suivre

2. La diversité des critères SEO

3. Les méthodes de suivi classiques

4. Le suivi par le code

4.1 – Intérêt de la programmation

• La programmation permet d’effectuer plusieurs types d’outils (notamment avec cURL)– Robot d’indexation (récupération des liens internes ou externes)– Voir comme un robot– Mesure exacte de la fréquence de passage des bots– Récupération des URL referers pour le suivi

• Google Analytics se base sur ces données !

– Mesurer le nombre de backlinks dans les moteurs et le nombre de pages indexées

– Extraire les données pour analyser les <title>, <meta />, <h1>…

4.2 – Suivi par la technique (code)

• Avantages– Suivi entièrement personnalisé– Suivi « brut », sans filtre ni intermédiaire…– Codes adaptés à chaque situation (langages, besoins…)– Gratuit (sauf « main d’œuvre » si nécessaire)

• Inconvénients– Maîtrise avancée de la programmation– Temps de développement– Langages variables selon le système, le serveur, le CMS…

4.3 – Base technique

• Etudier les URL transmises par les moteurs de recherche et outils– Les URL referers regorgent d’informations !

• Exemples avec des adresses de cache :– URL Google : http://www.google.fr/url?

sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CCMQIDAA&url=http%3A%2F%2Fwebcache.googleusercontent.com%2Fsearch%3Fq%3Dcache%3AlCck6ZHqrVgJ%3Awww.abondance.com%2F%2B%26cd%3D1%26hl%3Dfr%26ct%3Dclnk%26gl%3Dfr&ei=KhSgU9j4BMGr0QWlzYCACg&usg=AFQjCNEh-x2uWWz08_RYUaofJjw5haqM3w&sig2=UFMYSe1X1q5GZdxXXMv2zA&cad=rja

– URL Baidu : http://cache.baiducontent.com/c?m=9f65cb4a8c8507ed4fece763105392230e54f7306c8a8c432c88c21f84642c101a39feaf627f5052dc856b6671b83a56fd833265367374a09ab89f39d7ace12c388957742740d7164d8445e9dc46548465d54de8df0ee7cde733e3fd828e8302009602526d81809c5a7703cb1fa1496e&p=882a9e4187904ead12a4cf265041&newp=8e7a8d16d9c119e903bd9b75094a92695c16ed6764918b&user=baidu&fm=sc&query=r%A8%A6f%A8%A6rencement+inurl%3Awww%2Eabondance%2Ecom&qid=&p1=1

4.4 – Base technique (suite)

• Maîtriser la technique pour capter les paramètres des URL referers– Usage de cURL (en PHP notamment) pour lire les pages comme un robot.

• Base d’utilisation du cURL en PHP– $contenu contient la page web visitée (lisible avec json_decode() ou en direct…)

// Lancement de cURL pour récupérer les données de l'API

$url = "http://www.site.com";

$curl = curl_init($url);

curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);

$contenu = curl_exec($curl);

curl_close($curl);

4.5 – Suivi de l’indexation

• Plusieurs programmes à réaliser :– Voir comme un robot Ingrédients

• Récupérer le contenu de la page crawlée, ses en-têtes voire d’autres informations (provenance, pays, heure, etc.)

– Coloriser le code pour faciliter la lecture du résultat…

– Suivre la fréquence de crawl• Lancer un code récurrent dans toutes les pages du site pour récupérer

la date de visite et les données de la superglobale $_SERVER– Exemples : $_SERVER['REQUEST_URI'], $_SERVER["HTTP_USER_AGENT"]…

– Suivre les liens avec la commande « site: »• Paramétrer un code avec cURL pour lancer la commande « site: » à la

volée et obtenir le nombre exact de pages indexées et les URL des pages indexées !

4.6 – Suivi de l’indexation (suite)

• Résultat extrait dans un fichier CSV (exemple)

4.7 – Suivi du positionnement

• Idée de programme :– Capter les informations des URL referers

• Récupération des dates de visites, URL d’origine, agent, pays, ville, requête voire position.

• Ce type de programme est « tout-en-un » mais demande une bonne maîtrise des paramètres d’URL des moteurs– « q », « query », « kw », « text » pour les requêtes

– « image », « images », « pictures », « web », « imgurl », « img » et les paramètres « bvh » ou « source » pour les sources d’origine

– « cd », « page », « first », « p1 », « pn », « pos » pour les positions (exact ou numéro de page)

4.8 – Suivi du positionnement (suite)

• Exemple de résultat de suivi en HTML

4.9 – Suivi des backlinks

• Possibilité de suivre la commande « link:URL »– Manque de précisions des données (nombre totalement faussé)

• Aucun programme ne permet réellement de compter les liens entrants– Il faudrait avoir le même index que Google ou Bing pour savoir

quelles pages font des liens vers d’autres pages, seul un robot d’indexation très puissant permet d’obtenir le compte « précis ».

• N.B. : même les Webmaster Tools n’ont pas des chiffres 100% exacts !

4.10 – Suivi des backlinks (suite)

$domaine = "www.domaine.ext";

function backlinks($domaine = '') {

if(!empty($domaine)) {

$url = "http://ajax.googleapis.com/ajax/services/search/web?v=2.0&q=link:".$domaine&filter=0";

// Lancement de cURL pour récupérer les données de l’API

$curl = curl_init($url);

curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);

$contenuJSON = curl_exec($curl);

curl_close($curl);

$resultat = json_decode($contenuJSON, true);

if($resultat['responseStatus'] == 200) {

return $resultat['responseData']['cursor']['resultCount'];

}

}

}

echo backlinks($domaine);

4.11 – Suivi des données

• Récupération des données dans une page web (contenu, poids, en-têtes HTTP…)function cURL($url = '') {

if(!empty($url)) {

// Ajout du protocole s’il est manquant

if(!preg_match("#^https?://#iU", $url)) {

$url = "http://".$url;

}

// Récupération des données avec cURL

$curl = curl_init($url);

$userAgent = $_SERVER["HTTP_USER_AGENT"];

curl_setopt($curl, CURLOPT_USERAGENT, $userAgent);

curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);

curl_setopt($curl, CURLOPT_FAILONERROR, 1);

// Récupération des données

$contenu = curl_exec($curl);

$codeHTTP = curl_getinfo($curl, CURLINFO_HTTP_CODE);

$contentType = curl_getinfo($curl, CURLINFO_CONTENT_TYPE);

$poids = curl_getinfo($curl, CURLINFO_SIZE_DOWNLOAD);

curl_close($curl);

$tab = array($contenu, $codeHTTP, $contentType, $poids);

return $tab;

}

}

4.12 – Suivi des données (suite)

• Détecter les liens morts (par numéro d’erreur)– Utiliser la fonction cURL() précédente– N.B. : possibilité de codes équivalents pour suivre les ALT, les <title>, <hn>,

<strong>…

function httpCodes($tabLiens = array()) {

if(!empty($tabLiens)) {

foreach($tabLiens as $lien) {

$codeHTTP = cURL($lien);

// Code HTTP de cURL()

$codes[] = $codeHTTP[1]." (".$lien.")";

}

return $codes;

}

}

Conclusion

1. Le suivi doit être effectué fréquemment

2. Les outils et services courants ne suffisent pas ou ne donnent pas toujours satisfaction

3. Coder ses propres outils facilitent le suivi régulier

4. L’analyse des données est essentielle !

Merci à tous

Posez vos questions…

Suivez-moi :

•http://blog.internet-formation.fr

•Twitter : @Formation_web

•Google+ : Mathieu Chartier

Recommended