Rendre une phrase invisible aux robots.

Discussion dans 'Problèmes de référencement spécifiques à vos sites' créé par tania, 1 Septembre 2005.

  1. tania

    tania Nouveau WRInaute

    Inscrit:
    1 Septembre 2005
    Messages:
    6
    J'aime reçus:
    0
    Bonjour à tous !

    Je cherche un moyen simple de rendre certains mots invisible aux robots via une expression régulière (donc ni image ni utilisation de USER_AGENT)

    $texte = eregi_replace ("(mot1|mot2|mot3)", "<script>document.write('\\0');</script>", $texte);

    On peut compliquer un peu le truc en placant le document.write dans une fonction …

    Mais le pb c’est que je suis pas sure que ça soit fiable à 100% (surtout sans passer par une fonction). Et ça m’ennuie d’utiliser le javascript pour les personnes qui ne l’ont pas actif sur le navigateur.

    Si quelqu’un a une astuce.

    A ma connaissance il n’y a pas balise html <noindex> pour cadrer des textes à ne pas indexer … dommage. Pourtant si j’indique sur mon site que je ne fait pas de planche à voile ça m’embête beaucoup que des utilisateurs qui tape « planche à voile » tombe sur mon site :)
     
  2. magicaxe

    magicaxe WRInaute discret

    Inscrit:
    18 Octobre 2004
    Messages:
    151
    J'aime reçus:
    0
    Hello,

    Deux constatations:
    - Très peu de monde à le javascript désactivé
    - Si de toute façon le texte n'est pas très "pertinent" (tu ne veux pas que les moteurs le voient) donc ce n'est pas très important qu'une petite partie de tes visiteurs ne voient pas certains textes.

    Une suggestion:
    - Utilise du flash
     
  3. e-kiwi

    e-kiwi WRInaute accro

    Inscrit:
    23 Décembre 2003
    Messages:
    15 681
    J'aime reçus:
    0
    ah ben ca c'est nouveau. maintenant, on ne veut plus des visiteurs mdr :)

    dès que tu emploi le mot "javascript" tu ne peux pas associer l expression "fiable à 100%". mais si tu as "planche à voile" dans ton texte, c est bien que ton site en parle.

    a part interdire l indexation de la page complete, je vois pas trop de moyen PROPRE et FIABLE
     
  4. tania

    tania Nouveau WRInaute

    Inscrit:
    1 Septembre 2005
    Messages:
    6
    J'aime reçus:
    0
    Le javascript est souvent activé c’est vrai, mais une solution sans serais quand même mieux.

    Je prend un autre exemple alors :
    Je suis streap-teaser pro (je garde le string :). mais je reçoit souvent des propositions pour de l’escorting. J’indique donc : « Je ne suis pas escort ! ».
    Ça m’embête d’apparaître pour escort …
     
  5. tom_sawyer

    tom_sawyer WRInaute passionné

    Inscrit:
    2 Décembre 2004
    Messages:
    1 205
    J'aime reçus:
    0
    tu mets le mot dans une image ?
     
  6. tania

    tania Nouveau WRInaute

    Inscrit:
    1 Septembre 2005
    Messages:
    6
    J'aime reçus:
    0
    Oups désolé wri si des visiteurs arrivent sur ce forum à la recherche d’escortes :)
    tu n’as plus qu’a faire comme moi :
    Chercher un moyen d’empêcher les moteurs de lirent ce mot dans ton forum :)

    T'image si je dois remplacer tout les mots d’un forum par une image… en plus cela ne serra pas esthétique chaque forum utilise sa propre feuille de style et sa propre police de caractères …
     
  7. HawkEye

    HawkEye WRInaute accro

    Inscrit:
    23 Février 2004
    Messages:
    18 166
    J'aime reçus:
    0
    si tu définis
    $escorte = 'esc<font class="hidden">fdsefsx</font>orte';

    que tu définis "hidden" dans ton css,

    et que ton contenu est

    Je ne propose pas de service d' $escorte

    Ou un truc dans le genre ?

    -> Affichage à l'écran = "Je ne propose pas de service d'escorte"

    -> Affichage au bot = "Je ne propose pas de service d'escfdsefsxorte".

    Si quelqu'un qui s'y connait mieux en masquage de texte veut bien corriger, je pense que tu auras ta solution.

    @+
     
  8. tania

    tania Nouveau WRInaute

    Inscrit:
    1 Septembre 2005
    Messages:
    6
    J'aime reçus:
    0
    HawkEye_TpfH t'es trop fort !
    c'est ce qui convient le mieu je pense.
    je vais aisseyer.
     
  9. tania

    tania Nouveau WRInaute

    Inscrit:
    1 Septembre 2005
    Messages:
    6
    J'aime reçus:
    0
    si ca interresse quelqu'un la fonction preg_replace_callback permet de recuperer le mot dans une fonction ... pratique


    Code:
    function noindex ($word) {
    return ($word[0]);
    }
    
    echo preg_replace_callback('(mot1|mot2)', "noindex", $texte);
     
  10. tania

    tania Nouveau WRInaute

    Inscrit:
    1 Septembre 2005
    Messages:
    6
    J'aime reçus:
    0
    voila le code complet :

    Code:
    <style>
    .noindex { display: none; }
    </style>
    
    <?php
    
    function noindex ($word) {
    	$moitie = round(strlen($word[0])/2);
    	$debut = substr($word[0],0,$moitie);
    	$fin = substr($word[0],$moitie);
    	return ($debut."<span class=\"noindex\">z</span>".$fin);
    }
    
    $texte = 'dqdqdsqsd escort qdsqdqdq porno sdsdds'; 
    
    echo preg_replace_callback('(escort|porno)', "noindex", $texte);
    
    ?>