Comment supprimer la DiggBar

Digg a sorti sa DiggBar la semaine dernière. C'est une monstruosité qui nous ramène en 1996, à l'époque où des informaticiens qui trouvaient que les montres à quartz frames étaient une super vache de bonne idée[1], et où un certain nombre de parasites ont pourri le web avec cette technique en "enveloppant" le contenu produit par d'autres pour se l'accaparer à leur profit.

Vous pouvez voir la DiggBar en action en faisant précéder n'importe quelle URL par "http://digg.com/", elle sera raccourcie sous la forme "http://digg.com/xxxx" et enveloppée sous la bannière de Digg. Voici par exemple la page d'accueil de Google enveloppée par Digg.

Si vous voulez plus de détails j'ai publié un article en anglais — Killing the DiggBar — mais pour reprendre les mots de John Gruber : « Les frames cassent les signets, empêchent de copier/coller l'adresse de la page, cassent l'historique du navigateur, cassent les signets scriptés. Il n'y a rien d'acceptable dans cette technique ». Il y a encore d'autres raisons, comme les pubs de Digg, la pollution de vos statistiques et le classement dans les moteurs de recherche.

Vous trouverez un certain nombre de pointeurs vers différentes techniques pour contrer la DiggBar dans mon billet en anglais, mais la technique la plus simple à mettre en œuvre est de placer ces trois lignes quelque part dans un fichier javascript servi avec vos pages web (Il s'agit du JavaScript DiggBar killer de Faruk Ateş) :

if (top !== self && document.referrer.match(/digg\.com\/\w{1,8}/)) {
top.location.replace(self.location.href);
}

Je vous invite vivement à modifier vos sites pour tuer cette horreur dans l'oeuf avant que cette vraie mauvaise idée ne fasse des petits à droite à gauche, et que le cauchemar du framing ne revienne comme il y a dix ans.

P.S. Le code ci-dessus doit être placé dans un fichier javascript existant. Si vous n'en avez pas, alors il faut déclarer ce code comme suit directement dans la page HTML (de préférence dans l'entête). Le code suivant tuera n'importe quelle frame, qu'il s'agisse de Digg ou d'un autre, comme Google Images ou Facebook ou StumbleUpon :

<script type="text/javascript">
if (top !== self) { top.location.replace(self.location.href) }
</script>

Note :
[1] Encore que je ne serais pas étonné d'apprendre que le tag <frameset> et sa clique soient une invention Vogon.

6 commentaires

J'utilise déjà cette technique depuis un bail. C'est fou le nombre de gens qui tombent sur mes sites via Google Image.
Et du coup, ça fait trafic double.

Nierk nierk

Inconvénient : dans un lecteur de flux RSS comme Netvibes si on choisit d'afficher le site et non seulement le flux RSS, on sort de l'interface ce qui est rageant pour l'utilisateur.

Si dans netvibes, on ne va plus sur les sites car on met tous en lecture des flux, c'est un manque à gagner pour le blogueur qui a recourt à la publicité ou qui souhaite qu'on visite son site.

Question difficile à trancher !

Tres bon.
J'ai justement eu dernierement des problemes avec Google Translate qui depuis peu dirige systematiquement vers une frame... (j'ai donc utilise l'API, c'est mieux).
Bref en tout cas je vais de ce pas voir comment l'implémenter chez moi.

Laisser un commentaire

En laissant un commentaire, vous acceptez la politique des commentaires de ce blog.

Archives mensuelles

Notes récentes