当然,您只需为
ListItem最后一项提供,而省略
@id:
<script type="application/ld+json">{ "@context": "http://schema.org", "@type": "BreadcrumbList", "itemListElement": [{ "@type": "ListItem", "position": 1, "item": { "@id": "http://www.example.com/", "name": "Home" } }, { "@type": "ListItem", "position": 2, "item": { "@id": "http://www.example.com/brands", "name": "Brands" } }, { "@type": "ListItem", "position": 3, "item": { "name": "My Brand" } }]}</script>这是有效的JSON-LD,根据Schema.org可以使用。
但是,无论如何,我都会添加上一个/当前项目的URL。如果是RDFa或Microdata,我会使用
link元素作为最后一项的URL(因此该URL对人类访问者而言不可单击,但是漫游器具有更多数据),但是对于JSON-
LD,此问题不相关首先,因为人类访客通常不会与之互动。
唯一可以想象到的缺点是,如果HTML中的内容与JSON-
LD中的内容不匹配(即缺少最后一项的URL),那么消费者就会感到困惑。但是我认为这种风险非常低,因为众所周知,处理最后一个面包屑项目有不同的方法。
就文档而言,Schema.org只说
BreadcrumbList“通常以当前页面结尾”。
并以消费者为例,Google对面包屑功能也说了同样的话:
面包屑痕迹可以包括或忽略出现在其上的页面的面包屑。
但是他们没有说最后一个项目没有URL的情况。



