Обработка isAccessibleForFree для клиентских платных сетей - PullRequest
0 голосов
/ 03 сентября 2018

Пытаясь понять Руководство Google по платному контенту .

Мой сайт работает так:

  • Содержимое статьи находится в элементе .paid-content.
  • Для свободных пользователей мы используем скрипт, который иногда удаляет элемент .paid-content и заменяет его на элемент .paywall, который говорит: «Пожалуйста, купите подписку, чтобы прочитать эту статью».

Так что есть 2 возможности, когда бесплатный пользователь заходит на статью на моем сайте:

  1. Вы можете прочитать статью бесплатно, и в этом случае существует только элемент .paid-content, а платный доступ отсутствует.

  2. Вы не можете прочитать статью. Мы удаляем элемент .paid-content и заменяем его элементом .paywall.

В настоящее время мой JSON-LD выглядит следующим образом

"hasPart":[  
      {  
         "@type":"WebPageElement",
         "isAccessibleForFree":false,
         "cssSelector":".paid-content"
      },
      {  
         "@type":"WebPageElement",
         "isAccessibleForFree":false,
         "cssSelector":".paywall"
      }
   ],
   "isAccessibleForFree":false

Вопросы:

  1. Должен ли .paywall быть указан в массиве hasParts? Этот элемент просто говорит «Пожалуйста, купите подписку». Он не содержит текста, который скрыт от бесплатных пользователей.

  2. В моем случае, только один из этих двух элементов будет существовать на странице в любой момент времени. Это нормально? Или сканер Google посчитает, что это проблема, если он не может найти все элементы, указанные в массиве hasPart?

1 Ответ

0 голосов
/ 20 сентября 2018

Краткий ответ:

Для Google hasPart> cssSelector предназначено для визуального указания скрытого контента за платным экраном. В вашем примере вы либо полностью удаляете контент, либо показываете все содержимое публично, так что схема не имеет значения и не нужна в любом случае.

.paywall не потребуется, поскольку cssSelector должен ссылаться на класс элемента, обертывающего содержимое paywalled, а не просто на сообщение paywall (которое видимо всем пользователям).

.paid-content - это обертка контента, которая видна всем пользователям, что также делает эту схему ненужной, поскольку вы должны ориентироваться только на контент, визуально скрытый за платным доступом (см. Ниже и их второй пример ).

Я не уверен, как Google отреагирует на эту разметку схемы, не соответствующую DOM, но я думаю, что в этом случае это можно игнорировать, поскольку они ищут что-то очень специфическое. Проблема с страницей без индексированного содержимого - вот большая проблема.

Длинный ответ:

Смысл этой схемы платного доступа (с точки зрения Googles) сводится к одной из основных причин :

Издатели должны включать платный контент со структурированными данными в помочь Google отличить платный контент от практики клоакинг, где контент, предоставляемый Googlebot, отличается от контент, предоставляемый пользователям.

Клоакинг (то есть скрытие контента на странице для повышения SEO) уже много лет является большой стратегией, используемой «черными шляпниками». Google накажет эту практику, где они могут (например, BMW в 2006 ) и, конечно, проделали большую работу над своими алгоритмами, чтобы поймать этот материал автоматически. Проблема в том, что теперь у нас есть такие сайты, как ваш, которые «скрывают контент», но по другим (и менее сомнительным) причинам.

Вы визуально не скрываете свой контент, вместо этого вы удаляете контент со страницы. Проблема этого подхода заключается в том, что вы рискуете, что боты Google также попадают на платный доступ и не индексируют страницу должным образом - поскольку контента просто нет. Даже если вы убираете контент с помощью JavaScript , это риск .

Именно поэтому типичные сайты платного доступа будут закрывать или скрывать контент за наложением CSS в сочетании с overflow:hidden на теле. Этот подход, вероятно, вызывает красный флажок Google для маскировки, и именно поэтому они теперь просят людей использовать это (я просто предполагаю, что последнее предложение).

Таким образом, принимая во внимание это и просматривая примеры Google по предоставленной вами ссылке, cssSelector просто говорит: «Этот контент не какой-то хитрый трюк / уловка, он просто платный, так что давайте все же индексировать его «.

Суть в том, что схема в вашем примере не имеет значения ... потому что либо вы показываете пользователям весь контент и вам нечего доказывать Google, либо вы отображаете страницу без контента и Google не будет беспокоиться о проблеме маскировки.

Так что, если это ваша вещь, эмпирическое правило:

  1. Не удаляйте контент со страницы (даже через JS), если хотите индексируется
  2. Если вы платите контент, скрывайте его и помогите Google, используя их схема инструкции

Другие слабо связанные примечания:

  1. Если вы возьмете cssSelector из инструмента структурированных данных , он все равно подтверждает, но я не всегда верю, что инструмент верен
  2. Google hasPart и schema.org hasPart не совсем совпадают до
  3. Заставляет меня задуматься, как это не просто открыть дверь для новых трюков с черными шляпами
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...