Cacher des choses aux moteurs de recherche

Ceci est une ARCHIVE, peut-être périmée. Vérifiez bien les compatibilités !

Ce filtre permet de dissimuler un nom de personne aux « yeux » des moteurs de recherche, tout en le laissant visible aux internautes.

A quoi ça sert ?

Crypte un nom de personne présent dans le texte, sans en empêcher l’affichage à l’écran.

Par exemple l’internaute lira :
Hier, Durand a dit: "nous sommes gouvernés par des crapules".

Mais les robots des moteurs de recherche verront :
Hier, Drand a dit: "nous sommes gouvernés par des crapules".

Quelqu’un faisant une recherche sur « Durand » sur le web pour savoir ce qu’il y raconte en sera pour ses frais !

Comment ça marche ?

Dans l’article, il suffit de mettre entre des balises <masque> et </masque> ce qui doit rester invisible aux robots.

Pour l’exemple précédent, dans l’article on a écrit :
Hier, <masque>Durand</masque> a dit: "nous sommes gouvernés par des crapules".

Mise en garde
Ce filtre ne fait pas bon ménage avec les raccourcis de Spip et le code html, ne mettre que du texte entre <masque> et </masque>.

Comment utiliser ce filtre ?

1. Copiez-collez l’extrait de code ci-dessous dans votre fichier mes_fonctions.php3. (A mettre entre une balise <?php et une balise ?> si le fichier ne contient pas déjà ces balises.)

2. Dans votre squelette, utilisez le filtre de la manière suivante : [(#TEXTE|cryptenoms_txt)]

/*
 *   +----------------------------------+
 *    Nom du Filtre :    cryptenoms_txt                                               
 *   +----------------------------------+
 *    Date : 25 avril 2005
 *    Auteurs : Paolo et BMR                                      
 *   +-------------------------------------+
 *    Fonctions de ce filtre :
 *     Rendre invisible un nom de personne
 *     aux moteurs de recherche.
 *   +-------------------------------------+ 
 *  
 * Pour toute suggestion, remarque, proposition d'ajout
 * reportez-vous au forum de l'article sur :
 * http://www.spip-contrib.net/ecrire/articles.php3?id_article=934
*/

// Le filtre cryptemail est utilisé par cryptenoms_txt
// Pour en savoir plus sur cryptemail, voir :
// http://www.spip-contrib.net/Crypter-du-texte-un-email-une-URL
function cryptemail($textemail)
{
        $s="";
        for ($i=0;$i<strlen($textemail);$i++) {
          $s.="&#".ord($textemail{$i}).";";
        }
      return $s;
}

// cryptenoms_txt crypte tout ce qui est entre <masque> et </masque>
function cryptenoms_txt($texte) {
preg_match_all("/<masque>(.*?)<\/masque>/",$texte,$found);
$total = count($found[0]);
    for($i=0; $i < $total; $i++) {
        $texte = 
str_replace($found[0][$i],cryptemail($found[1][$i]),$texte);
    }
return $texte;
}
// FIN du Filtre cryptenoms_txt

Remarque
Ce filtre fait appel au filtre cryptemail qui du coup devient lui aussi utilisable.
Voir : Crypter du texte, un email, une URL

Merci qui ?

Je l’ai souhaité,
Paolo l’a imaginé,
Paolo et BMR l’ont fait
en s’appuyant sur une contrib de Coyote.

Du beau travail d’équipe !

Important

Il y a un doute sur la fiabilité de la méthode utilisée (cache t-elle réellement du texte aux robots ?). Merci de donner votre avis dans le forum ci-dessous.

Discussion

Une discussion

  • Salut,

    Chouette contrib. Ce genre de petits trucs pour protéger la vie privée n’est pas du tout inutile en ces temps de surveillance généralisée.

    Une suggestion pour une éventuelle nouvelle version : pourquoi ne pas utiliser les points d’entrée de inc_texte.php3 pour faire ça ? Ca te permettrait d’éviter de devoir passer ton filtre sur tous les champs de ton site, ce qui est assez fastidieux et lourd comme manière de procéder. Au contraire, en plaçant ton filtre dans une fonction apres_propre() dans le fichier ecrire/mes_options.php3, tu peux faire en sorte que le truc soit chargé systématiquement dans tous les champs texte de SPIP.

    Il y a un doute sur la fiabilité de la méthode utilisée (cache t-elle réellement du texte aux robots ?).

    Je me pose aussi la question :)

    François

    Répondre à ce message

Ajouter un commentaire

Avant de faire part d’un problème sur un plugin X, merci de lire ce qui suit :

  • Désactiver tous les plugins que vous ne voulez pas tester afin de vous assurer que le bug vient bien du plugin X. Cela vous évitera d’écrire sur le forum d’une contribution qui n’est finalement pas en cause.
  • Cherchez et notez les numéros de version de tout ce qui est en place au moment du test :
    • version de SPIP, en bas de la partie privée
    • version du plugin testé et des éventuels plugins nécessités
    • version de PHP (exec=info en partie privée)
    • version de MySQL / SQLite
  • Si votre problème concerne la partie publique de votre site, donnez une URL où le bug est visible, pour que les gens puissent voir par eux-mêmes.
  • En cas de page blanche, merci d’activer l’affichage des erreurs, et d’indiquer ensuite l’erreur qui apparaît.

Merci d’avance pour les personnes qui vous aideront !

Par ailleurs, n’oubliez pas que les contributeurs et contributrices ont une vie en dehors de SPIP.

Qui êtes-vous ?
[Se connecter]

Pour afficher votre trombine avec votre message, enregistrez-la d’abord sur gravatar.com (gratuit et indolore) et n’oubliez pas d’indiquer votre adresse e-mail ici.

Ajoutez votre commentaire ici

Ce champ accepte les raccourcis SPIP {{gras}} {italique} -*liste [texte->url] <quote> <code> et le code HTML <q> <del> <ins>. Pour créer des paragraphes, laissez simplement des lignes vides.

Ajouter un document

Suivre les commentaires : RSS 2.0 | Atom