Enfin sorti de 2 ans de blackout des moteurs de recherche – pensez, je n’étais même pas en première position sur mon nom – grâce aux bons conseils référencement d’Aymeric Jacquet (/backlink à mots clés), j’ai décidé de remettre quelques publicités sur ce site, histoire de payer mon serveur et de continuer à héberger tout un tas de gens sympathique ainsi que quelques projets open source tout aussi sympathiques. Cependant, hors de question de faire subir ces dernières à mes lecteurs réguliers, il me fallait donc filtrer en fonction du refferer entre ceux des visiteurs qui me venaient des outils de recherche et les autres.

Typo générant un cache HTML statique, j’ai été obligé de passer par du Javascript, langage que je ne maîtrise absolument pas. C’est donc moche, certainement améliorable, mais ça a le mérite de marcher.

La fonction modifiée en tenant compte des retours reçus dans les commentaires :

display_adsense = function(client, slot, width, height, div) {
  if (document.referrer == "") {
    return(0);    
  }

  var referrers = ["/search", "search.live.com", "ask.com", "images.google", "soso.com", "baidu"];

  for (var i = 0; i < referrers.length; i++) {
    if (document.referrer.toLowerCase().indexOf((referrers[i]+'')) != -1) {
      google_ad_client = client;
      google_ad_slot = slot;
      google_ad_width = width;
      google_ad_height = height;

      var e = document.createElement("script");
      e.type = "text/javascript";
      e.src = "http://pagead2.googlesyndication.com/pagead/show_ads.js";
      document.getElementById(div).appendChild(e);
      return(0);
    }
  }  
}

Paramètres :

  • client : le paramètre google_ad_client figurant sur le script d’affichage normal de vos annonces Adsense.
  • slot : le paramètre google_ad_slot figurant sur le script d’affichage normal de vos annonces Adsense.
  • width : le paramètre google_ad_width figurant sur le script d’affichage normal de vos annonces Adsense.
  • height : le paramètre google_ad_height figurant sur le script d’affichage normal de vos annonces Adsense.
  • div : l’id du bloc dans lequel vous souhaitez afficher votre annonce.

Voilà ; si vous avez des remarques constructives – autres que adsense ça sux ou le refferer sniffing ça sux – afin d’améliorer cette fonction, je suis évidemment preneur. Vous pouvez également m’offrir le livre de Christophe Porteneuve Bien développer pour le web 2.0, Noël est passé mais il n’est jamais trop tard pour bien faire.

Perry the Platypus wants you to subscribe now! Even if you don't visit my site on a regular basis, you can get the latest posts delivered to you for free via Email: