首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >带有非拉丁字符的JSON问题:产品显示为BreadcrumbList的最后一项。

带有非拉丁字符的JSON问题:产品显示为BreadcrumbList的最后一项。
EN

Webmasters Stack Exchange用户
提问于 2018-11-15 07:39:43
回答 2查看 277关注 0票数 1

我花了两天时间找出以下JSON的问题所在,但没有结果。

如果您在测试工具中检查此代码,您将看到Product奇怪地显示为BreadcrumbList的最后一项。

代码语言:javascript
运行
复制
<script type="application/ld+json">
{"@context":"https:\/\/schema.org\/","@graph":
[{"@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"item":{"name":"teest","@id":"https:\/\/tennisfa.com\/shop"}},{"@type":"ListItem","position":2,"item":{"name":"test","@id":"https:\/\/tennisfa.com\/shop\/product-category\/3\/"}},{"@type":"ListItem","position":3,"item":{"name":"test","@id":"https://tennisfa.com/shop/product/%d8%b3%d8%a7%da%a9-%d8%aa%d9%86%db%8c%d8%b3-%d9%87%d8%af-tour-team-wimbledon-12r-monstercombi/"}}]},{"@type":"Product","@id":"https://tennisfa.com/shop/product/%d8%b3%d8%a7%da%a9-%d8%aa%d9%86%db%8c%d8%b3-%d9%87%d8%af-tour-team-wimbledon-12r-monstercombi/","name":" Tour Team Wimbledon 12R Monstercombi","image":"https:\/\/tennisfa.com\/shop\/wp-content\/uploads\/2018\/11\/htourteamwimbledon12r.jpg","description":"test","sku":"283108","offers":[{"@type":"Offer","price":"1550000","priceSpecification":{"price":"1550000","priceCurrency":"IRT","valueAddedTaxIncluded":"false"},"priceCurrency":"IRT","availability":"https://tennisfa.com/shop/product/%d8%b3%d8%a7%da%a9-%d8%aa%d9%86%db%8c%d8%b3-%d9%87%d8%af-tour-team-wimbledon-12r-monstercombi/","seller":   {"@type":"Organization","name":"test","url":"https:\/\/tennisfa.com\/shop"}}]}]}
</script>

我认为问题在于非拉丁网址。但我不知道怎么解决。

EN

回答 2

Webmasters Stack Exchange用户

回答已采纳

发布于 2018-11-15 14:06:29

第三个ListItemProduct具有相同的URI (在@id中).¹,这意味着它们是相同的东西。

如果结构允许它(就像在您的例子中那样),Google的SDTT只显示一次项,即使它是在不同的JSON对象中定义的。

用于页面的

URI与产品

如果您关心链接的数据,那么有一件事您可能需要考虑:网页和产品(这个网页是关于这个产品的)是不同的,所以它们是应该有不同的URI

  • ListItem‘S item将是ItemPage (而不是Product),因为面包屑链接到页面,而不是指向这些页面上描述的内容。
  • ItemPage将页面的规范URL作为@id
  • Product将页面的规范URL +片段标识符(例如,#product)作为@id

通过使用ItemPage,还可以使用breadcrumbmainEntity属性,因此不再需要在@graph中拥有无关的顶级对象。

代码语言:javascript
运行
复制
{
  "@context": "http://schema.org",
  "@type": "ItemPage",
  "@id": ""
  "breadcrumb": {
    "@type": "BreadcrumbList"
  },
  "mainEntity": {
    "@type": "Product"
    "@id": "#product"
  }
}

顺便说一句,availability属性也有这个URI,但这很可能是一个错误。

票数 1
EN

Webmasters Stack Exchange用户

发布于 2018-11-18 10:46:47

财产规格**告诉我们:

此项目的可用性--例如库存、缺货、预定等.

值应该是这些类型之一的ItemAvailability。

类型ItemAvailability的枚举成员:

停产InStock InStoreOnly LimitedAvailability OnlineOnly OutOfStock PreOrder PreSale SoldOut

将这些值用于属性可用性可能是有用的,但不像您所拥有的那样使用url。

票数 0
EN
页面原文内容由Webmasters Stack Exchange提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://webmasters.stackexchange.com/questions/119064

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档