You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Shopify上设置从/collections/all到/collections/all/shop-all的301重定向?

实现Shopify /collections/all 到 /collections/all/shop-all 的301重定向

完全可以实现,以下是几种靠谱的方案,优先服务器端方案(对SEO更友好),搭配前端兜底和按钮修改,确保原路径彻底失效:

服务器端Liquid 301重定向(推荐)

Shopify支持通过主题的Liquid代码设置服务器端301头,步骤如下:

  1. 进入Shopify后台 → 在线商店 → 主题 → 操作 → 编辑代码
  2. 打开theme.liquid文件,在<head>标签最顶部插入以下代码:
{% if request.path == '/collections/all' %}
  {% response.set_header 'Location', '/collections/all/shop-all' %}
  {% response.set_header 'Status', '301 Moved Permanently' %}
  <meta http-equiv="refresh" content="0; url=/collections/all/shop-all" />
{% endif %}

这段代码会在用户访问原路径时,直接返回301永久重定向的HTTP状态码,同时用meta标签做浏览器端兜底,确保跳转生效,搜索引擎也能正确识别重定向关系。

前端JS兜底方案(备用)

如果服务器端方案因主题限制无法生效,可以添加JS强制跳转:
在theme.liquid的</body>标签前插入:

if (window.location.pathname === '/collections/all') {
  window.location.replace('/collections/all/shop-all');
}

replace方法会直接替换浏览器历史记录,避免用户通过返回按钮回到原路径,更贴合301的跳转逻辑。

修改“Shop”按钮直接跳转目标页

找到按钮所在的模板文件(通常是header.liquid或sections/header.liquid),将按钮的跳转路径从/collections/all改为/collections/all/shop-all:

  • 静态HTML按钮修改示例:
    原代码:
<a href="/collections/all" class="shop-btn">Shop</a>

修改后:

<a href="/collections/all/shop-all" class="shop-btn">Shop</a>
  • Liquid动态按钮修改示例:
    原代码:
<a href="{{ routes.all_products_collection_url }}" class="shop-btn">Shop</a>

修改后:

<a href="/collections/all/shop-all" class="shop-btn">Shop</a>

验证效果

  1. 访问你的店铺域名/collections/all,应自动跳转至目标页面,通过浏览器开发者工具的「网络」面板可查看301状态码(服务器端方案)。
  2. 点击“Shop”按钮,直接打开/collections/all/shop-all。
  3. 确认原路径无法停留,始终触发跳转。

内容的提问来源于stack exchange,提问作者Tyler Tisdale

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 20:42:25