我正在开展以下SEO友好导航:
<nav itemprop="breadcrumb" itemscope itemtype="https://schema.org/BreadcrumbList">
<ul id="hornavmenu" class="nav navbar-nav">
<li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem" >
<a href="index.html" class="fa-home active" itemprop="item"><span itemprop="name">Start</span></a>
</li>
<li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem" >
<a href="about.html" class="fa-group " itemprop="item"><span itemprop="name">About</span></a>
</li>
<li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem" >
<a href="contact.html" class="fa-comment " itemprop="item"><span itemprop="name">Contact</span></a>
</li>
</ul>
</nav>
问题是,在Google搜索中,Breadcrumblist看起来像这样:
网址 - &gt;开始 - &gt;关于 - &gt;接触
当然这是错的,但代码中有什么问题?另外,我想补充一下:
<nav itemscope="itemscope" itemtype="http://www.schema.org/SiteNavigationElement">
…
</nav>
...但是我在哪里添加BreadcrumbList以及如何合并这两个?
答案 0 :(得分:2)
Google不鼓励在面包屑列表中添加“主页”链接,如Google Breadcrumbs页面所示,其中所有示例都省略了主页。面包屑不适用于主导航,您应该有足够的链接到其他地方。
根据我使用BreadcrumbList的经验,当链接指向域时,Google确实省略了SERP中面包屑的“主页”链接。在这种情况下,您使用的是“index.html”,它可能是与“example.com”不同的页面。
SiteNavigationElement用于指示站点的主要导航。如上所述,面包屑不是这个。使用SiteNavigationElement进行实际导航。有关详细信息,请参阅What is the correct use of schema.org SiteNavigationElement?。
答案 1 :(得分:1)
BreadcrumbList
类型适用于breadcrumbs。不要将它用于别的东西。
在您的情况下,它似乎是一个导航菜单。 SiteNavigationElement
类型可用于这些。它可能看起来像:
<nav itemscope itemtype="http://schema.org/SiteNavigationElement">
<ul>
<li><a href="index.html">Start</a></li>
<li><a href="about.html">About</a></li>
<li><a href="contact.html">Contact</a></li>
</ul>
</nav>
如您所见,它适用于整个导航,而不适用于单个导航链接。所以don’t use name
or url
for the links。
如果您想提供有关每个链接页面的结构化数据,可以使用ItemList
together with SiteNavigationElement
。这与您的BreadcrumbList
示例类似。
注意:I recommend not to use SiteNavigationElement
at all,除非您考虑到特定用例或消费者(在这种情况下,您应该遵循他们的文档)。