Правильная разметка Schema.org для обзоров продуктов - это сообщения в блоге - PullRequest
0 голосов
/ 14 января 2019

Какой правильный Schema.org JSON-LD для поста / статьи в блоге, которая предназначена исключительно для обзора продукта? Пример практического использования, которое вездесуще в Интернете: у меня есть веб-сайт, на котором есть блог, на котором пишутся обзоры и даются партнерские ссылки (например, Amazon).

Технически, это Product, это Review, и, очевидно, это Article (BlogPosting?).

На Product вы можете вкладывать структуру Review. Таким образом, это кажется более сфокусированным на содержании страниц, и я предполагаю, что это будет использоваться. Но это все еще статья, и технически сайт не предлагает сам продукт, из-за чего тип Product кажется неправильным.

Так как именно вы должны обрабатывать подобную партнерскую разметку для сайтов блогов, не подвергаясь риску разметки вводящей в заблуждение информации?

1 Ответ

0 голосов
/ 14 января 2019

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


Минимум будет Review с itemReviewed:

{
  "@context": "https://schema.org/",
  "@type": "Review",
  "itemReviewed": {
    "@type": "Product"
  }
}

Если вы хотите сообщить, что обзор опубликован в виде поста в блоге, вы можете дополнительно использовать BlogPosting:

{
  "@context": "https://schema.org/",
  "@type": ["Review", "BlogPosting"],
  "itemReviewed": {
    "@type": "Product"
  }
}

Если BlogPosting состоит из большего, чем просто Review, но Review является основным содержимым, вы можете использовать mainEntity с отдельными объектами (и если это не основной вы можете использовать hasPart вместо):

{
  "@context": "https://schema.org/",
  "@type": "BlogPosting",
  "mainEntity": {
    "@type": "Review",
    "itemReviewed": {
      "@type": "Product"
    }
  }
}

И если вы хотите предоставить данные о веб-странице, которая содержит публикацию в блоге, которая содержит / содержит обзор, вы можете использовать ItemPage с mainEntity:

{
  "@context": "https://schema.org/",
  "@type": "ItemPage",
  "mainEntity": {
    "@type": ["Review", "BlogPosting"],
    "itemReviewed": {
      "@type": "Product"
    }
  }
}
{
  "@context": "https://schema.org/",
  "@type": "ItemPage",
  "mainEntity": {
    "@type": "BlogPosting",
    "mainEntity": {
      "@type": "Review",
      "itemReviewed": {
        "@type": "Product"
      }
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...