web-dev-qa-db-fra.com

Comment empêcher Google d'indexer du texte généré par JavaScript?

Google exécute le code JavaScript sur le site Web du créateur de mon mot de passe et indexe les mots de passe aléatoires générés par le code JavaScript.

Le texte aléatoire généré peut sembler spammeur pour Google et je crains que cela ne nuise au classement. C’est un texte que seul Googlebot verra (les utilisateurs voient leur propre texte généré), ce qui le masque en un sens. J'utilise des mots courants comme suggestions de mot de passe et il est possible qu'ils apparaissent dans l'ordre d'une phrase de recherche populaire. De plus, chaque fois que Googlebot affichera la page, son texte sera différent. Par conséquent, ma page aura l’impression de changer beaucoup plus fréquemment qu’elle ne le fait réellement.

Les mots de passe apparaissent également dans les résultats de la recherche dans l'extrait de texte sous le lien des recherches normales. Ils ont l'air moche, alors je voudrais aussi empêcher Google d'utiliser le texte généré pour les extraits de recherche.

Comment empêcher Googlebot d’indexer le contenu du mot de passe sur mon site? J'aimerais que le reste du contenu de la page soit indexé.

6

robots.txt peut bloquer les fichiers JavaScript de Googlebot. http://www.robotstxt.org/ contient plus d'informations sur la création d'un fichier robots.txt .

Vous pouvez mettre votre code JavaScript indiquant le mot de passe dans un fichier JavaScript externe (appelé showlists.js ):

$(document).ready(function(){
    showLists();
});

Appelez ce fichier JavaScript dans la page head:

<script src="/showlists.js"> 

Ensuite, refusez-le dans robots.txt :

disallow: /showlists.js

Googlebot pourrait alors analyser la page, mais ne verrait pas les mots de passe restitués sur la page.

Cette méthode est la méthode approuvée par Google pour bloquer les éléments de page de Googlebot qui évite les masques. L'inconvénient de cette méthode est qu'elle nécessite un fichier JavaScript externe, ce qui peut ralentir le chargement de la page.

Vous pouvez tester votre fichier robots.txt avec des testeurs en ligne tels que http://tools.seobook.com/robots-txt/analyzer /

8
user9953

J'ai créé une fonction de masquage en JavaScript:

function isBot(){
    return /bot|crawl|Slurp|spider/i.test(navigator.userAgent)
}

Ensuite, j'utilise cette fonction pour afficher les mots de passe en charge ou pour afficher un message expliquant pourquoi aucun mot de passe n'a été généré:

if (isBot()){
    $('#isbot').show();
} else {
    showLists();
}

Maintenant, lorsque j'utilise la fonctionnalité "Fetch and Render" de "Fetch as Google" à partir des outils pour les webmasters, je reçois le texte suivant.

C'est ainsi que Googlebot a vu la page:

Voici comment un visiteur de votre site Web aurait vu la page:

Cette solution implique de montrer aux visiteurs un texte différent de celui de Google, ce qui pourrait être considéré comme une violation des consignes de Google, du fait qu'il est techniquement occultant.

2

Existe-t-il un moyen de tirer parti des iframes?

Pour autant que je sache, Google ne peut que regarder la source d'un iframe, mais ne peut pas l'explorer directement dans la page parente.

Donc, la source iframe devrait être noindex.

2
lucgenti