Shopify 博客 ?page=2 canonical 该怎么写
现象#
博客第 2 页的文章一直不收录,Search Console 把这些 URL 归到「备用网页(含 canonical 标记)」,声明的规范网址都是 /blogs/news。
原因#
- 主题写死 canonical 为 blog.url,所有分页都指向第 1 页
- blog.url 不含 page 参数,模板里也没有读取 paginate.current_page
- SEO 应用把分页统一 canonical 到博客首页,等于告诉 Google 第 2 页不用收
- 分页链接由 JS 拼接,没有真实 a 标签,Google 只能靠 sitemap 发现第 2 页文章
处理步骤#
- 打开 /blogs/news?page=2 源码,确认
canonical指向的是第 1 页还是自身 - 把 head 里的 canonical 改为输出
canonical_url,让它带上 page 参数 - 分页导航用
{{ paginate.next.url }}输出真实链接,不要用 JS 拼接 - 文章本身的 /blogs/news/xxx 地址要 canonical 到自己,不要继承博客首页
- 用 URL 检查抓第 2 页,确认「用户声明的规范网址」是 ?page=2 本身
验收标准#
第 2、3 页的 canonical 分别指向自身,这些 URL 不再出现在「备用网页」分组里。
本文由 风格技术 技术团队整理,适用于 Shopify 标准版与 Plus 店铺。Shopify 平台能力迭代较快,具体操作路径与字段以官方文档和店铺后台实际版本为准。