JSON-LD и микроданные на одной странице?
У меня есть и Micro Data, и JSON-LD на страницах моих продуктов электронной коммерции, описывающих одно и то же (продукты в моем случае). По причинам, выходящим за рамки этого вопроса, я не могу удалить ни один из двух форматов. Мне интересно:
Это проблема для Google? Средство тестирования структурированных данных отображает два элемента (продукты) вместо одного.
Если одно свойство, скажем, название продукта, немного отличается между двумя форматами, будет ли какой-либо из двух форматов, например, JSON-LD, иметь приоритет?
1 ответ
Проблема в том, что потребитель будет думать, что описаны разные вещи (или, точнее, потребитель не узнает, одинаковы ли вещи или нет).
Есть способ предотвратить это: дать каждой вещи URI, и в случае, если вещи одинаковы, тот же URI.
Это может быть сделано с @id
в JSON-LD и с itemid
в микроданных.
Таким простым случаем может быть:
<!-- markup on the product page,
so the fragment "#this" results in an absolute URI like
"http://example.com/products/foo#this" -->
<!-- JSON-LD -->
<script type="application/ld+json">
{
"@context": "http://schema.org",
"@type": "Product",
"@id": "#this",
"name": "Foo"
}
</script>
<!-- Microdata -->
<article itemscope itemtype="http://schema.org/Product" itemid="#this">
<h1 itemprop="name">Foo</h1>
</article>
В случае, если собственность как name
имеет разные значения, очевидный способ, которым потребитель мог бы справиться с этим, состоит в том, чтобы дать вещи несколько имен. Для функции, в которой потребителю нужно ровно одно имя (например, в расширенном результате), не определено, какое из name
значения будут использованы. Если потребитель является поисковой системой, он, вероятно, будет использовать уже существующие проприетарные алгоритмы для обработки таких случаев.
¹ Конечно, не ясно, если / как все различные потребители поддерживают это. Но это правильный способ сделать это, и это единственный явный способ сделать это. Неявные способы включают в себя надежду, что потребитель понимает, что идентичные значения для типичных (но не обязательно) уникальных свойств (например, url
, email
, productID
и т. д.) означают, что вещи одинаковы. Но такой неявный способ, конечно, можно использовать вместе с явным.