
分面导航 SEO:电商筛选器产生的无限 URL 如何管控
分面导航(faceted navigation)的颜色、尺寸、价格区间三种筛选器只要各有 5 个选项,组合数就是 5×5×5=125 个 URL,实务上一个中型电商类目页常见组合数上看数万——多数是近重复页,会吃光 Googlebot 的抓取预算。 管控方法不是「全部 noindex」或「全部放行」,而是分三层:只放行有独立搜索量的组合、其余 noindex 但仍可抓取、无意义排列组合直接用 robots.txt 挡掉。
为什么分面导航会失控?
筛选器是乘法问题,不是加法。一个类目页若有:
- 4 种颜色
- 6 种尺寸
- 3 个价格区间
- 2 种排序方式
理论组合数是 4×6×3×2=144 个 URL,全部指向同一批商品,内容重叠率往往超过 90%。多数平台(Shopify、自建 WooCommerce、Magento)默认每种筛选都会生成独立可收录 URL,且排序方式不同的 URL 常被系统当成不同页面——这是分面导航 SEO 问题的根源。
实测案例:一个约 800 个 SKU 的服装电商站,筛选器全部开放收录后,Google Search Console「已发现、目前未编入索引」的页数在三个月内冲到 1.2 万条,远超过站内实际的 800 个商品页与约 40 个类目页——多出来的一万多条全是筛选器排列组合。
三层管控法:不是全放也不是全挡
把每种筛选器组合分到以下三层之一,而不是用同一套规则对待所有组合:
| 层级 | 判断依据 | 处理方式 |
|---|---|---|
| 放行收录 | 该组合有独立且有意义的搜索量(如「红色连衣裙」「M 码外套」) | 保留可收录、自我 canonical、加入 sitemap |
| noindex 但可抓取 | 组合本身无搜索量,但用户会实际使用(如「颜色+尺寸」双筛选) | noindex, follow,canonical 指向类目页,不放入 sitemap |
| 直接挡抓取 | 排序、分页参数、低价值多重筛选(如 3 种以上筛选叠加) | robots.txt disallow 该参数模式,或用 rel=nofollow 减少内部链接导流 |
判断「有无搜索量」的具体做法:把该筛选词组丢进关键词工具或 GSC 效果报表查询,月搜索量个位数且无点击记录的组合一律归入第二或第三层。
参数规则的具体设置
Canonical 标签:所有 noindex 层与挡抓取层的页面,<link rel="canonical"> 一律指向不带筛选参数的类目页本身,而非指向某个「主要」筛选组合——避免 canonical 链条来回跳转。
URL 参数处理三选项:
- Query string(
?color=red&size=m):最常见,但默认会被视为独立 URL,需靠 canonical/noindex 主动管控。 - 静态路径(
/dresses/red/):适合搜索量已验证的组合,做成独立可收录页面,通常转化率也较高。 - JavaScript 前端筛选不改网址:完全不产生新 URL,抓取预算问题消失,但放弃了长尾筛选词的排名机会——这是三者间最保守的做法。
多数成熟电商站是三种混用:高搜索量组合用静态路径(选项 2)承接流量,其余用 query string 加 noindex(选项 1)避免浪费抓取预算,内部 UI 交互用 JS 微调(选项 3)不产生垃圾 URL。
上线前检查清单
- 用 Screaming Frog 或类似工具抓一次类目页,统计实际产生的参数化 URL 总数。
- 对照 GSC「页面索引」报表,确认「已发现、目前未编入索引」的页数是否异常偏高(超过站内实际商品数的 2 倍即为警讯)。
- 抽查 20 个高流量筛选组合,逐一确认 canonical 指向是否正确。
- 检查 robots.txt 是否已挡掉排序参数(如
?sort=)与分页叠加筛选的组合。 - 确认 sitemap.xml 只列出「放行收录」层的 URL,不包含 noindex 或挡抓取层。
- 每季度重跑一次搜索量查询,把新出现搜索需求的组合从 noindex 层升级为放行收录层。
常见问题(FAQ)
Q1:所有筛选器组合都该加 noindex 吗? 不是。有独立搜索量的组合(如「红色连衣裙」这种用户真的会搜索的词)应该保留收录并做成独立页面;只有无搜索量的排列组合才该 noindex。全部 noindex 等于放弃了长尾筛选词带来的流量。
Q2:noindex 页面还要不要让 Googlebot 抓取?
通常建议 noindex, follow(不挡抓取),因为完全挡抓取(robots.txt disallow)会让 Google 连页面上的 noindex 标签都读不到,导致旧有索引数据迟迟不消失。robots.txt 挡抓取应保留给排序参数、分页叠加筛选这类完全无 SEO 价值的组合。
Q3:canonical 标签可以取代 noindex 吗? 不能完全取代。Canonical 是「建议」,Google 有时仍会选择自己认定的规范页;noindex 是较强的指令。对确定不想被收录的组合,两者并用(canonical 指向类目页+加 noindex)比只用 canonical 更可靠。
Q4:抓取预算问题只有大型电商站才需要在意吗? 中小型站也会受影响,只是影响幅度较小。若站内商品数在 500 以下但筛选器组合破万,Googlebot 仍可能把大量抓取配额耗在无意义的排列组合上,导致新商品页被发现与收录的速度变慢。
分面导航的抓取预算问题,本质上和 AI 爬虫的抓取范围管控是同一类技术课题——放行有价值的内容、挡掉会稀释信号的杂讯,方法可以互相参照,细节见〈AI 爬虫清单与管理〉。想确认你的页面结构整体是否对 SEO 与 AI 引用都友好,可以用 GEO 就绪度检测器 快速检查。