做电商或内容聚合类站点时,列表页往往是流量和收录的基本盘。很多站点把精力全放在详情页上,结果列表页优化没做到位,导致整站索引量上不去,分类页在搜索结果里也抢不到排名。其实列表页既是蜘蛛爬取的枢纽,也是用户筛选商品的起点,需要从结构、内容和技术三个维度同时着手。
不少站长发现,自己网站的商品列表页收录极慢,甚至只收录了首页和少量详情页。根本原因通常是列表页被处理成了纯翻页容器:每一页只有几十个商品标题和图片,没有一段独有的说明文字,搜索引擎认为这些页面“相似度过高、信息价值低”,便不再深入抓取。
另外一个常见问题是分页参数暴露过度。例如 /category/phone?page=2 和 /category/phone?sort=price_asc 如果都被收录,就会产生大量几乎重复的页面,稀释权重。正确做法是用 canonical 标签指向规范页,或者改用静态化的 /category/phone-p2.html 结构。
有些网站为了覆盖长尾词,生成了成千上万个筛选组合页,其中不少组合底下根本没有商品,成了空白列表页。这类页面不仅浪费爬虫预算,还会拉低整站质量评分。
我们之前接手过一个家居站,光“北欧 实木 小户型 沙发”这类多筛选项组合就开了两万多个 URL,实际有内容的不到三成。后来改用递进式分类:先按房间分,再按材质分,最后才开放风格筛选,并且只有当前筛选项下有商品时才渲染对应链接。改写后,列表页总量砍掉六成,收录率反而从 41% 升到 78%。
function shouldGenerateListPage(filters, productCount) {
if (productCount === 0) return false;
if (filters.length > 3) return false; // 最多三级筛选
return true;
}
列表页优化并不意味着要在页面塞满文字,而是在顶部加一段 80 到 150 字的场景化引导。比如“北欧沙发”列表页可以写:
北欧风格沙发以浅色木质框架和布艺软包为主,适合采光一般的中小客厅。下方按销量整理了热门款式,左侧可按尺寸和颜色筛选。
这段话对每个筛选维度是唯一的,能显著降低页面间相似度。注意不要在所有列表页套用同一段模板,那样反而会触发惩罚。
现在很多列表页用瀑布流或 ajax 加载更多,但搜索引擎抓不到异步内容。如果核心商品链接没有出现在初始 HTML 里,就别指望被正常索引。我们建议采用“首屏服务端渲染 + 后续无限滚动”的混合方案:
?page=2 的可爬取链接rel="next" 和 rel="prev" 标注序列关系(虽已非强信号,但仍有辅助价值)列表页是内链中枢。每个商品卡应链向详情页,同时列表页侧边栏可以放“同分类热门榜单”,把权重导向转化高的子页。我们做过一个对比:
| 策略 | 详情页平均收录周期 | 列表页跳出率 |
|---|---|---|
| 无侧边推荐 | 9 天 | 61% |
| 加热门榜单 | 4 天 | 47% |
数据说明,合理的内部引流既帮搜索引擎发现新页,也延长了用户停留。
给商品列表加上 ItemList 结构化数据,能让搜索结果展示富媒体摘要。一个最简实现:
<script type="application/ld+json">
{
"@context": "https://schema.org",
"@type": "ItemList",
"itemListElement": [
{"@type": "ListItem", "position": 1, "url": "/p/123"},
{"@type": "ListItem", "position": 2, "url": "/p/124"}
]
}
</script>
这不改变页面外观,但能帮算法理解列表页的聚合属性,对收录和展现都有好处。
在搜索平台的后台把列表页目录单独分组,观察抓取频率和索引覆盖。如果发现某类 /c/ 开头页面长期“已抓取未索引”,优先检查是不是上面说的空页或重复页问题。必要时用 robots 屏蔽低价值筛选参数,把预算留给核心列表。
列表页优化是一项持续工作,上线改动后至少观察两个抓取周期再调策略,避免频繁变更让算法无所适从。
评论
加载中...