Как сказать боту Google пропустить часть HTML? - PullRequest
6 голосов
/ 11 января 2012

Существует много информации о противоположной ситуации, когда люди пытаются использовать материал в HTML, который виден для ботов Google, но не виден для пользователей, в моем случае, мне нужна противоположная вещь - скрыть часть HTML от Googleбот.Вопрос будет в том, как?

Flash не является ответом,
Предпочел бы также не использовать причудливые Ajax-вещи (в основном потому, что мне это нужно сразу, а не на готовом документе),
Также роботы.txt не является ответом, потому что он работает с URL, а не с частями страницы.Будет ли работать какой-либо специальный CSS / простой JavaScript, есть ли специальный HTML-тег для этого?

Ответы [ 6 ]

8 голосов
/ 11 января 2012

Может быть, серверная кодировка base64, а затем декодирование на стороне клиента могли бы работать?

Код:

<!-- visible to Google -->
<p> Hi, Google Bot! </p>

<!-- not visible from here on -->
<script type="text/javascript">
document.write ("<?php echo base64_encode('<b>hey there, user</b>'); ?>");
</script>

Как выглядит бот:

<!-- visible to Google -->
<p> Hi, Google Bot! </p>

<!-- not visible from here on -->
<script type="text/javascript">
document.write (base64_decode("B9A985350099BC8913=="));
</script>
4 голосов
/ 26 ноября 2015

Это должно помочь:

<!--googleoff: index-->
<p>hide me!</p>
<!--googleon: index-->

Для получения дополнительной информации перейдите по ссылке на страницу Googles, которая более подробно описывает ее.

Исключение нежелательного текста из индекса

4 голосов
/ 11 января 2012

Создать Div, Загрузите содержимое Div (ajax) из HTML-файла, который находится в каталоге, защищенном роботами. Пример. /index.html

Где-то в шапке. (отметьте http://api.jquery.com/jQuery.ajax/)

$.ajax({
  url: '/hiddendirfrombots/test.html',
  success: function(data) {
    $('#hiddenfrombots').html(data);
  }
});

... где-то в теле

<div id="hiddenfrombots"></div>

создайте каталог «hiddenfrombots» и поместите следующий в корни .htaccess

User-agent: *
Disallow: /hiddenfrombots/ 
2 голосов
/ 24 июля 2013

Если вы можете использовать PHP, просто выведите свой контент, если не Googlebot:

// if not google
if(!strstr(strtolower($_SERVER['HTTP_USER_AGENT']), "googlebot")) { 
    echo $div;
}

Вот как я мог решить эту проблему.

0 голосов
/ 08 июня 2015
  • Загрузка контента через Ajax-вызов
  • Но создайте файл JS (например, noGoogleBot.js), который содержит функцию, реализующую вызов ajax:

    $.ajax({
      url: 'anything.html',
      success: function(data) {
        $('#anywhere').html(data);
      }
    });
    

Тогда в вашем robots.txt

User-agent: *
Disallow: /noGoogleBot.js

Таким образом, все div, загруженные с помощью функции в noGoogleBot, будут заблокированы. Робот Google (или любой другой сканер) будет игнорировать содержимое noGoogleBot.js.

0 голосов
/ 11 января 2012

просто, создайте изображение с текстом, который вы не хотите, чтобы Google видел

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...