面包屑导航看起来只是页面上方的一行小字,但它同时承担三件事:说明当前页面在站点中的位置、给用户提供一条回到上层的路径、为搜索蜘蛛补充层级信息。栏目调整频繁或者 URL 改过版之后,面包屑往往是最先失准、又最不容易被发现的元素。
面包屑要对应真实层级,而不是拼出来的字符串
面包屑的价值在于“路径可验证”。用户从首页点进来,沿着面包屑往回走,应该能到达真实存在的栏目页,而不是 404,也不是统一跳回首页的兜底地址。如果面包屑的中间层是虚拟分类、只在模板里拼出来的文字,它就承担不了导航功能,也容易让蜘蛛顺着无意义的地址反复试探。
一个简单的判断方法:把面包屑上的每一层链接单独打开,看它是不是一个有内容、有独立标题的正常页面。打不开、只能跳首页、或者所有页面都指向同一个聚合页,都属于需要修的情况。
常见错位与自查清单
- 最后一级仍带链接:当前页面通常不加链接,避免自链接和多余跳转。
- 层级跳跃:出现“首页 > 详情页”这样缺少中间栏目的情况,说明模板没有取到分类数据。
- 层级过深:把标签、作者、年份全部铺开,面包屑变成一长串,用户和蜘蛛都难以抓住重点。
- 起点重复:首页出现两次,或者用站点名代替“首页”却没有链接。
- 多套路径:同一篇文章从不同入口进入时面包屑差异过大,容易与 canonical 的判断产生矛盾。
- 移动端被隐藏:小屏下直接 display:none,用户失去一条回退路径。
结构化数据与页面文字要对得上
如果已经输出了 BreadcrumbList 结构化数据,最好让它和页面上可见的面包屑保持一致:顺序一致、名称一致、链接一致。常见的问题是页面文字改了,结构化数据还停留在旧栏目名;或者结构化数据里的 URL 带参数,页面链接不带参数。搜索引擎更看重用户能看到的内容,两者不一致时,结构化数据不会带来额外好处,反而增加排查成本。
另外,名称尽量用人能看懂的文字,而不是栏目 ID 或英文缩写。标题很长时也不必整段塞进去,取一个能区分层级的短名即可。
与 URL 结构、内链的配合
面包屑不是孤立元素。理想状态下,面包屑的层级、URL 的目录结构、栏目页的内链入口三者大致能对应上:URL 是 /a/b/c/,面包屑是“首页 > A > B > 当前页”,栏目 B 的列表页里也有一条指向当前页的链接。三方互相印证,蜘蛛在爬取时更容易判断页面归属。
如果 URL 出于历史原因无法调整,至少让面包屑和内链保持自洽,不要让面包屑指向一个和 URL 完全无关的目录。
一个可执行的检查流程
- 抽取各栏目的样本页,手动走一遍面包屑的每一层。
- 记录打不开、跳首页、指向聚合页的层级,归类到模板问题还是数据问题。
- 核对结构化数据与可见文字,尤其关注改版后遗留的旧名称。
- 在移动端实际点一遍,确认没有被样式隐藏、点击区域也不至于过小。
- 修改后从外部进入路径再验证一次,确认用户落地的层级是合理的。
面包屑本身不决定排名,但它影响用户能不能顺着路径继续往下看,也影响蜘蛛能不能快速判断页面属于哪个栏目。栏目调整或改版之后顺手检查一遍,成本很低,却能省掉不少后面解释不清的问题。