UrlEdge
回到博客
2025-10-22 UrlEdge 编辑部9 分钟阅读

Shopify 改到 Headless,怎么保住网址与流量

Shopify 网址搬家不只是换前端。先盘点商品页、分类页、活动页与 UTM 链接,再用跳转对照表、批次规则与上线前验证保住流量。

开发者在笔电上检查 Shopify 店面并规划 Headless 迁站

Shopify 改成 Headless 时,最容易被低估的不是新前端,而是旧网址。

设计、性能和结账体验都很重要,但上线当天真正会让 SEO、广告和营收出问题的,通常是这些链接突然失效:

  • Google 已经收录的商品页
  • 分类页与活动页
  • EDM、WhatsApp、Meta 广告、KOL 贴文里的商品链接
  • 联盟营销与合作伙伴链接
  • 带有 utm_sourceutm_campaign、coupon 或 referral 参数的网址

如果你正在做 Shopify site migration,请把 redirect layer 当成正式上线项目,而不是 DNS cutover 之后才补的清理工作。

Shopify 搬到 Headless 为什么容易坏网址

Shopify 原本的 URL 结构很固定:

  • /products/{handle}
  • /collections/{handle}
  • /pages/{handle}

改成 Next.jsHydrogen 或自建 Headless 架构后,团队常会顺手把路径改短,或依新的信息架构重新整理:

  • /shop/{handle}
  • /c/{handle}
  • /{handle}

新结构可能更干净。但对迁站来说,问题不是新网址好不好看,而是旧网址还活在很多地方。

一个旧商品网址可能同时存在于 Google 搜索结果、品牌 EDM、WhatsApp、微信服务号或企业微信图文、Facebook 广告、开箱文、QR Code、客服回复模板,以及消费者自己的书签里。你不处理它,它就会变成 404。

[!WARNING] 不要等到 DNS cutover 才开始补跳转。跳转对照表应该在 staging 就完成导入、抽查与批次爬行。

先定义迁站风险

没有跳转对照表的 Headless 迁站,通常会遇到三个问题。

1. 商品与分类页变成 404

Googlebot 和真实消费者都可能打到旧的 /products/.../collections/...。如果没有对应的新目的地,这些请求就会失败。

2. 旧链接的价值被浪费

反向链接、站内链接、搜索结果、合作页面都需要清楚指到新的最佳目的地。不是每个旧网址都值得保留,但高价值 URL 不应该被丢到首页或直接放任失效。

3. 活动归因断掉

迁站 QA 很容易只看「页面有没有到」,却忘了 utm_、coupon、affiliate、referral 这些参数。如果跳转把 query string 洗掉,广告与 EDM 报表会看起来像突然失真。

第 1 步:导出旧 Shopify URL

不要靠记忆做跳转。

先从 Shopify 拿一份基础清单,再用 SEO、分析与营销数据补齐真正有流量的网址。

从 Shopify Admin 导出商品

Products > Export 导出全部商品。CSV 里通常会有 Handle 字段。

Handle,Title,Variant Price
cool-tshirt,Cool T-Shirt,29.99
blue-jeans,Blue Jeans,49.99

你可以用 handle 建出旧商品页:

/products/cool-tshirt
/products/blue-jeans

解析 sitemap.xml

如果要包含商品、分类、页面与 blog,请解析 Shopify 的 sitemap.xml

# 安装 sitemap parser
npm install -g sitemap-to-csv
 
# 抓取并转成 CSV
sitemap-to-csv https://store.example/sitemap.xml > urls.csv

补上搜索与活动数据

Shopify 不会知道所有重要网址。请另外导出:

  • Google Search Console 有曝光或点击的页面
  • GA4、warehouse 或 BI 里的 landing page 报表
  • 仍在投放的广告 URL
  • EDM、CRM、简讯、WhatsApp、微信服务号或企业微信里的链接
  • 联盟营销、KOL、合作伙伴页面
  • 客服常用链接与旧活动页

这些网址要标出优先顺序。高流量、高营收、高风险的 URL 先处理,不要把时间平均分给所有旧页。

第 2 步:设计跳转对照表

你不一定要为每个网址手写一条规则。Shopify 原本的结构很规律,很多情况可以用 pattern rule 处理,再用一对一规则处理例外。

情境 A:只改前缀

  • 旧网址https://shop.example/products/blue-jeans
  • 新网址https://shop.example/shop/blue-jeans

UrlEdge 规则可以像这样:

  • Source: ^/products/(.*)$
  • Destination: /shop/$1
  • Type: 301

情境 B:移除商品前缀

  • 旧网址https://shop.example/products/blue-jeans
  • 新网址https://shop.example/blue-jeans

UrlEdge 规则:

  • Source: ^/products/(.*)$
  • Destination: /$1
  • Type: 301

[!TIP] 如果你把商品放到 root level,要先确认新 router 不会跟 /about/contact/cart、分类 slug 或活动页互相撞到。

情境 C:保留活动参数

很多活动链接会在外面活很久。

https://shop.example/products/blue-jeans?utm_source=newsletter&utm_campaign=spring

跳转后应该到:

https://shop.example/shop/blue-jeans?utm_source=newsletter&utm_campaign=spring

如果 query parameters 被删掉,你的 crawler 可能看不出问题,因为页面仍然会到。但广告、EDM、KOL 与会员活动的归因会安静地坏掉。

第 3 步:把例外先想清楚

Shopify 搬到 Headless 后,通常不是所有旧页都能直接套 wildcard。

你至少要先决定这些情况:

  • 已下架商品要导到替代商品、分类页、品牌故事页,还是 410?
  • 合并后的 collection 要导到哪个新分类?
  • 旧活动页还有没有搜索或广告流量?
  • 商品 handle 改名时,要不要保留旧 slug?
  • 多语系或多市场店面是否要保留地区路径?

不要把所有例外都丢到首页。对用户来说,首页通常不是「最接近」的目的地;对 SEO 和分析来说,它也会让你失去判断问题的能力。

第 4 步:在 Edge 层执行跳转

你可以把跳转写进 headless app,例如 next.config.js 或 Middleware。但对大型迁站来说,把跳转绑在前端部署里通常不理想。

开发者在程序编辑器中处理 Headless 店面迁站的跳转逻辑

更干净的做法,是把 redirects 放在专门的 Edge routing layer:

  • 大量规则不会塞进前端代码
  • SEO 或营销可以先导入 CSV 让工程审核
  • DNS 切换前可以用 staging hostname 验证
  • 上线后修例外不必重新部署 storefront
  • 旧商品页与活动页能直接在靠近访客的节点回应

UrlEdge 可以导入 CSV,也可以直接定义 Regex 规则。

{
  "rules": [
    {
      "source": "^/products/(.*)",
      "destination": "/shop/$1",
      "type": 301
    },
    {
      "source": "^/pages/contact-us",
      "destination": "/contact",
      "type": 301
    }
  ]
}

第 5 步:上线前验证

Shopify 网址搬家不能只测首页。

在正式切 DNS 前,请用旧 URL inventory 去打新的跳转层。

先测 staging domain

把 staging hostname 指到 UrlEdge,先测高价值 URL:

  • 热门商品页
  • 热门分类页
  • 目前投放中的活动页
  • 有自然流量的 blog 或内容页
  • 带 UTM、coupon、affiliate 参数的网址

用 curl 看状态码与 Location

curl -I https://staging.shop.example/products/old-product
 
# 预期输出:
# HTTP/2 301
# location: /shop/old-product
# x-urledge-rule: regex-product-match

如果要看完整 hop,改用:

curl -IL https://staging.shop.example/products/old-product

你要看到的是一个干净的 301,而不是 HTTP -> HTTPS -> www -> old path -> final path 这种多段跳转链。

批次爬行旧网址

用 Screaming Frog 或类似 crawler,把旧 URL 清单整批丢进 staging。请特别看:

  • 404
  • 302 被误用在永久搬家
  • 多段跳转链
  • 跳转回圈
  • query string 被移除
  • 目的地不是最佳对应页

如果你需要更完整的上线流程,可以搭配 网站迁移跳转检查清单 一起跑。

上线日要看什么

DNS 切换后,至少前 7 到 14 天要盯住这些讯号:

  • 旧商品与分类页的请求量
  • 新站 404
  • 高价值跳转规则的命中次数
  • 广告与 EDM landing page 报表
  • Search Console 的索引与错误变化
  • 客服是否收到找不到商品或订单页的回报

如果你在 UrlEdge 里管理跳转,可以用 analytics跳转检查工具坏链接监控 协助看规则是否真的按预期运作。

结论

Headless Shopify 迁站其实有两次上线:一次是新 storefront,一次是让旧流量安全抵达新站的跳转层。

真正稳的做法不是等 404 出现再补,而是提前完成:

  • 商品页、分类页、活动页与内容页盘点
  • 高价值 URL 的跳转对照表
  • UTM 与活动参数保留
  • CSV 或 Regex 批次规则
  • staging 验证与上线日监控

如果你准备把 Shopify 网址搬到 Headless 架构,先在 UrlEdge 建立跳转对照表,再让新店面接正式流量。建立免费账号 后可以先导入第一批 URL 做验证。

准备把链接运营收起来了吗?

开始使用 UrlEdge,把 short links、redirect rules、UTM 参数和 device routing 放进同一个工作台。

开始使用

相关文章

查看全部