21 November 2024


formation avancée au référencement

Posts Tagged ‘Flash’

PageRank Sculpting en Flash

Mercredi, février 24th, 2010

Le PageRank sculpting a été longtemps une source de débat, et a porté plusieurs noms, et depuis la modification de l’attribut rel=”nofollow”, les SEO ont cherché quelle était la meilleure solution pour le faire.
Lors de la conférence SEO Campus qui s’est tenue le week-end dernier, le sujet a été abordé. On y recommandait de faire comme avant l’arrivée de l’attribut rel=”nofollow”, c’est à dire de construire ses pages en incluant les liens les plus importants aux yeux du webmaster afin que ces les urls de destination profitent du jus de la page en cours.
Le message en gros, c’est de ne pas faire de PR sculpting, mais plutôt du PR modeling… Alors qu’est-ce que cela nous apprend au juste ? Pas grand chose…

PageRank Sculpting en Flash

Moi j’aime le PageRank sculpting !

Oui mais moi, j’aime le PR sculpting ! et je trouve que cela fonctionne plutôt pas mal. Si cela ne fonctionnait pas, Matt Cutts ne l’aurait certainement pas modifié !La question est pourquoi continuer d’en faire ?
Je prends un exemple simple : vous avez un site avec de nombreux liens d’affiliation… Allez-vous appliquer à chacun un attribut nofollow qui aura pour effet de limiter le jus transmis à vos pages internes ? Ma réponse est non !
Les liens d’affiliation, ce n’est pas fait pour les bots, mais pour les visiteurs (je n’ai jamais vu Googlebot générer un lead pour ma part). C’est donc bien là qu’il faut agir. Le fait que l’on rentabilise un site n’a rien à voir avec sa qualité et je ne vois pas pourquoi son maillage interne devrait en pâtir…
Donc je reste un partisan du PR sculpting dans ce genre de cas…

Du nouveau dans les techniques de PR sculpting ?

Aujourd’hui, je vous propose une technique pas forcément nouvelle, mais bien efficace : le PR sculpting en Flash :D
On sait tous que Googlebot sait décompiler les fichiers SWF (animations Flash®), et lire le JavaScript (bien qu’en fait Googlebot ne fait rien de tout ça, il ne fait qu’aller chercher les informations, c’est l’algorithme qui fait le travail).
Mais il suffit de lui interdire l’accès à ces fichiers pour se sentir plus serein (joke).

Le principe est simple, mais réellement efficace… Je vous avais livré un code JS pour faire du PageRank sculpting il y a quelques temps, très utile dans de nombreux cas, et c’est ce code légèrement modifié que nous allons réutiliser.
Et là vous me dîtes “mais quel est le rapport entre Flash et JS ?”. C’est une excellente question ! L’intérêt de la technique que je vous présente est qu’il n’y a pas besoin d’être expert en développement ActionScript pour réussir son sculpting. Nous allons faire intéragir une animation Flash simpliste avec le document HTML conteneur. Ceci est possible grâce au package flash.external.
Ce package AS3 vous permet tout simplement de passer des fonctions JavaScript via Flash. Ces fonctions peuvent exister dans le fichier conteneur, ou tout simplement être définies dans le SWF lui-même. Vous avez donc maintenant bien compris le fonctionnement de la technique…
Maintenant que le concept est posé, passons à la pratique ;)

Un peu de code

  1. Vous n’avez pas besoin d’avoir le logiciel Flash® pour créer ces fichiers
  2. Créer ces fichiers pour un débutant n’est pas tout simple
  3. Je vous donne les sources dans l’article ;)

Le fichier ActionScript

Pour commencer, il vous faut un éditeur de texte ou un EDI de votre choix (Coda, Dreamweaver, Notepad++, Emacs etc…)
Ensuite, il va falloir créer un “package” qui va inclure les packages Flash et qui contiendra une class. Pour que le script fonctionne, nous allons devoir utiliser la class Sprite de manière à lancer automatiquement l’animation, mais nous n’aurons aucune utilisation avancée de cette class.
La class que nous allons créer ne contiendra qu’une seule fonction (le constructeur), qui se chargera de faire le travail.
Appelons ce fichier SculptPR.as

1
2
3
4
5
6
7
8
9
10
package{
	import flash.external.ExternalInterface;
	import flash.display.Sprite;
 
	public class SculptPR extends Sprite{
		function SculptPR():void{
			ExternalInterface.call("function(){var lnk = '', txt = '';var s = document.getElementsByTagName('span');for(i=0; i< s.length;i++){if(s[i].className.indexOf('afflink') != -1){lnk = document.createElement('a');lnk.href = s[i].title;txt = s[i].innerHTML;lnk.target = '_blank';lnk.innerHTML = txt;s[i].innerHTML = '';s[i].removeAttribute('title');s[i].appendChild(lnk);}}}", "");
		}
	}
}

Le fichier SWF

Mais là vous me dîtes : “oui, c’est bien joli un fichier .as, mais qu’est-ce que j’en fais ?”. Et bien pour l’utiliser, il nous faut le compiler. C’est ce que fait normalement le logiciel Flash®, mais nous avons une alternative gratuite proposée par Adobe® : le SDK de Flex (vous pouvez le télécharger si vous acceptez les conditions d’Adobe»).

Pour la compilation, je vous renvoie au très bon tutoriel du site du Zéro qui explique très clairement comment procéder.
Je me permets simplement de rappeler un point très important : le nom du fichier, le nom de la class et le nom du constructeur (la fonction) doivent porter le même nom.
La liste des packages de Flash est disponible sur le site d’Adobe® et le détail du package flash.external est consultable sur cette page.

Une fois votre fichier SWF compilé, vous pourrez le placer dans un fichier bloqué par robots.txt (c’est beau d’y croire encore :D ) et l’appeler dans votre page HTML, après le chargement de la page, par exemple avec un petit script JS comme celui-ci.

1
2
3
4
5
6
<script type="text/javascript">
window.onload=function(){
document.getElementById('flash').innerHTML = '<object type="application/x-shockwave-flash" data="SculptPR.swf" width="1" height="1" border="0"><param name="movie" value="SculptPR.swf" /><param name="wmode" value="transparent" /><param name="autoplay" value="true" /><param name="allowScriptAccess" value="always" /><p>Tout va bien, Googlebot, je fais un site pour les visiteurs !</p></object>';
}
</script>
<div id="flash"></div>

Enfin, il ne vous reste plus qu’à remplacer vos liens d’affiliation par le code suivant pour que la magie s’opère.

1
<span class="afflink" title="/mon-lien-affiliation">ancre ou bannière</span>

Ainsi donc, Googlebot ne verra que du texte et les internautes pourront générer les leads qui les intéressent ;)
Si vous souhaitez modifier le paramètre qui permet d’identifier les span à transformer en liens, il faut changer le nom de la classe CSS dans les span, sans oublier de l’indiquer également dans le fichier ActionScript ;) (ici, on a choisi “afflink”).
Enfin, il ne faut pas de retour à la ligne dans le code Javascript que l’on insère dans le fichier ActionScript, sinon, cela génère des erreurs et le fichier ne se compile pas en SWF.

Voilà une nouvelle technique sympathique, qui j’espère vous aidera à transmettre plus de jus dans vos pages internes ;)
De votre côté, utilisiez-vous déjà ce genre de techniques ? Lesquelles préférez-vous (mis à part le PR mouling et le PR touching :lol: ) ?