B2B 产品目录分页,不是把页面做长,而是让第二页、第三页和更深分页真的能被发现。外贸站最怕的不是“有分页”,而是分页只有按钮和 JS,没有可抓取的
<a href>,最后深层型号、材质和应用场景都躲在爬虫看不见的地方。
这篇只讲一个事:产品目录页分页怎么处理,避免 AI 搜索和普通搜索爬虫只看到第一页附近的内容。
它不是 sitemap 总论,不是参数筛选总论,也不是产品页 robots 误拦截排查。
先分清你在处理哪一种“翻页”
1. 目录分页
/products/
/products/page/2/
/products/page/3/
2. 参数筛选页
/products/?sort=price
/products/?filter=steel
3. 站内搜索结果页
/?s=valve
/search?q=valve
这三类 URL 不要混着看。
| 类型 | 业务角色 | 这篇怎么处理 |
|---|---|---|
| 目录分页 | 承接产品列表和深层型号发现 | 重点讲 |
| 参数筛选页 | 产生排序、过滤、组合变体 | 只作为边界提一下 |
| 站内搜索结果页 | 用户主动搜索后的结果页 | 留到 38 讲 |
如果你把分页、筛选、搜索结果混成一组 URL,后面的判断会全乱。
第一步:先看分页页是不是独立 URL
Google 的分页文档写得很清楚:每一页要有自己的 URL,常见可以是 ?page=n,也可以是路径型分页,只要稳定一致。
SITE="https://www.example.com"
curl -I "$SITE/products/"
curl -I "$SITE/products/page/2/"
curl -I "$SITE/products/page/3/"
curl -I "$SITE/products/?page=2"
你要看的不是“能不能打开”,而是这几个信号:
| 信号 | 你要什么 |
|---|---|
| 状态码 | 分页页稳定返回 200 |
| 最终 URL | 和你设计的分页格式一致 |
| 页面内容 | 第二页真的有第二批产品,不是复制第一页 |
| URL 规范 | 全站只用一种分页格式,不要混用路径和参数 |
如果 page/2/ 和 ?page=2 同时存在,通常就要统一。
同一个目录最好只有一种分页口径,不然搜索系统要猜两套关系。
第二步:看分页是不是靠 <a href> 发现
Google 在分页文档里明确说,爬虫一般抓的是 <a> 的 href,不会像用户一样去点按钮,也不会靠需要用户动作的 JS 去翻下一页。
<nav class="pagination" aria-label="Products">
<a href="/products/">1</a>
<a href="/products/page/2/">2</a>
<a href="/products/page/3/">3</a>
<a href="/products/page/2/">Next</a>
</nav>
如果你现在是这种结构,就要警惕:
<button data-page="2">Load more</button>
<div id="product-list"></div>
按钮本身没问题,但不能只剩按钮。
对分页目录来说,后续页最好还是有明确可抓取的 URL。
PAGE="https://www.example.com/products/page/2/"
curl -fsSL "$PAGE" |
rg -n 'href="[^"]+/products/[^"]+"|href="[^"]+/products/page/3/"|href="[^"]+/products/page/1/"'
你想看到的是:
- 分页页之间有连续链接
- 分页页里的产品卡片有真实
href - 首页能回到第一页
- 第二页能去第三页,不是死胡同
第三步:不要把第 2 页、第 3 页 canonical 到第一页
这是最容易写错的一步。
Google 的分页文档明确说,分页序列里每一页都应该有自己的 canonical URL。
不要把后续分页页都 canonical 到第一页。
<link rel="canonical" href="https://www.example.com/products/page/2/" />
<meta name="robots" content="index,follow" />
如果你还有 rel="prev" / rel="next",可以把它当成兼容性信息,不要当成 Google 当前的核心分页方案。Google 已经不再把它当主信号了。
不要这样写:
<link rel="canonical" href="https://www.example.com/products/" />
这会把第二页的独立性压扁。
如果第 2 页有独特的产品集合,它就不该假装自己是第一页。
第四步:分页页和筛选页分开处理
分页页本身不等于筛选页。
分页页是“第几屏”,筛选页是“按什么条件筛出来”。
Google 的 faceted navigation 文档提到,参数组合很容易制造大量 URL。
所以对参数页,你要做的是控制组合,而不是把分页页一起误伤。
User-agent: *
Allow: /products/
Allow: /products/page/
Disallow: /*?sort=
Disallow: /*?filter=
Disallow: /*&sort=
Disallow: /*&filter=
如果某些排序/过滤页不需要进入搜索结果,可以给它们单独处理:
<meta name="robots" content="noindex,follow" />
注意,这里说的是筛选/排序页,不是目录分页页。
目录分页页如果本来就是产品发现路径的一部分,别一刀切 noindex。
第五步:检查 sitemap 和内链是不是把深层产品露出来
sitemap 不是收录保证,但它能帮搜索系统发现你认为重要的 URL。
对 B2B 产品目录来说,重点不是把所有分页都塞进去,而是让真正重要的目录页、产品详情页和关键深层入口都有发现路径。
SITE="https://www.example.com"
curl -fsSL "$SITE/sitemap.xml" |
rg -n '/products/|/products/page/2/|/products/page/3/|/product/'
你要找的是:
- 核心产品分类页在 sitemap 里
- 重点产品详情页在 sitemap 里
- 深层型号页能从分页页和分类页被链接到
- 没有把测试页、空页、错误页混进去
真正有价值的产品,不要只靠“第 5 页以后慢慢翻”。
可以从分类页、系列页、应用页、案例页多给一条入口。
第六步:复查产品卡片是不是把深层内容带出来
分页目录页的价值不只在列表本身,还在它把哪些产品卡片暴露出来。
PAGE="https://www.example.com/products/page/2/"
curl -fsSL "$PAGE" |
rg -o 'href="[^"]+"' |
rg '/products/|/product/'
你要确认:
| 检查项 | 说明 |
|---|---|
| 产品卡片链接 | 每个产品详情页都能被抓到 |
| 标题文本 | 型号、材质、应用别只放图里 |
| 页面深度 | 深层产品不只依赖首页入口 |
| 重复内容 | 不要每一页都长得像第一页 |
如果分页页只是把第一页复制三遍,搜索系统很难从中得到新的产品信号。
这不是“分页技术问题”,是内容分布问题。
第七步:把分页和站内搜索、参数页、专题页分工清楚
目录分页
负责把现有产品列表往后展开。
参数页
负责筛选,不负责抢目录分页的角色。
专题页 / 应用页
负责承接高价值搜索意图。
如果买家常搜的不是“第 2 页产品列表”,而是“food grade valve”或“stainless steel valve for dairy”,那就别让分页页硬扛。
更稳的是把高频意图做成正式专题页或应用页。
一个可直接用的验收表
| URL | 类型 | 状态码 | canonical | href 是否可抓 | in sitemap | 处理 |
|---|---|---|---|---|---|---|
/products/ |
目录首页 | 200 |
自己 | 是 | 是 | 保持 |
/products/page/2/ |
分页页 | 200 |
自己 | 是 | 视策略 | 保持可发现 |
/products/page/3/ |
分页页 | 200 |
自己 | 是 | 视策略 | 保持可发现 |
/products/?sort=price |
排序页 | 200 |
可按策略 | 是/否 | 否 | 视需要 noindex |
/products/?filter=steel |
筛选页 | 200 |
可按策略 | 是/否 | 否 | 视需要 noindex |
常见错误
| 错误做法 | 更稳的做法 |
|---|---|
| 把所有分页页 canonical 到第一页 | 每页保留自己的规范 URL |
只有按钮,没有 a href |
给分页页可抓取链接 |
| 分页页和筛选页混成一类 | 分开处理 |
| 深层型号只放在很后面的页 | 给它更多目录入口 |
| 只看 sitemap,不看内链 | sitemap 和内链一起查 |
| 让分页页承担所有 SEO 入口 | 用专题页、应用页、分类页分担 |
这篇 37 解决的不是“目录怎么做得更花”,而是让产品目录的后半段真的能被发现。
参考资料
- Google: Pagination, incremental page loading, and their impact on Google Search
- Google: Link best practices for Google
- Google: Managing crawling of faceted navigation URLs
- Google: URL structure best practices for Google Search
- Google: How to specify a canonical URL with rel=canonical and other methods
- Google: Learn about sitemaps