给页面加了 canonical 之后,收录数量反而下降,甚至整站只剩首页。canonical 是给搜索引擎的建议,写错方向等于主动告诉它「这页不用收录」。
先抓页面看实际输出
curl -s https://你的域名/文章地址 \ | grep -o ']*>'
如果所有页面都指向首页,就是主题或插件写死了。这是最常见也最致命的一种错误,等于把全站声明成重复内容。
正确的指向规则
- 普通文章页指向自己的规范地址,自引用即可
- 分页列表每一页自引用,不要全部指向第一页
- 只有参数页、打印页这类真正重复的地址,才指向主版本
和 sitemap、hreflang 对齐
canonical 里的地址必须和 sitemap、内链、跳转最终落地地址完全一致,带不带 www、结尾有没有斜杠都要统一。协议混用同样会让搜索引擎判定为两个页面。
改完用抓取工具确认返回的 HTML 里只有一条 canonical,重复输出两条时,搜索引擎通常按第一条处理,结果可能和你预期相反。
标签页和搜索结果页更要注意,这类页面天然和列表页相似,canonical 指向列表主页面才是正确用法,指向自己反而制造重复。