如何检查用户来自哪个 collection/product 标记 URL,然后在条件语句中使用它?
How can I check which collection/product tag URL a user came from and then use that in a conditional statement?
我为客户的 Shopify 网站创建了面包屑导航代码,显示
collection >> product tag >> product
例如:
tableware >> plates >> yellow-striped plates
我们使用产品标签来创建子类别。此面包屑导航不起作用的唯一情况是当一个产品被标记为一个集合下的两个不同子类别时。因此,例如,我们有集合 "party favors",它有子类别(产品标签)"girls favors" 和 "boys favors"。木制陀螺被标记为 "girls favors" 和 "boys favors"。因此,当遍历数组时,"boys favors" 首先出现并显示在产品页面上,当用户来自女孩喜欢的子类别和男孩喜欢的子类别时。我不能使用删除来删除 "boys favors",因为这也会为男孩喜欢的产品页面删除它。
我的 breadcrumb.liquid 页面有没有办法知道用户来自哪个 collection/producttag URL,然后我可以获取该信息并创建一个变量我可以创建条件代码周围显示正确的产品标签(在同一产品有两个不同的产品标签代表同一集合下的两个子类别的情况下)?
Shopify 不存储可变数据。它仅根据 URL 呈现页面。您可以结合使用 JS 和 liquid 代码来实现此功能
- 在您的
collection.liquid
模板或 product-block.liquid
片段中找到链接到产品的 a
标签。
- 在关闭
href
属性之前添加此代码 {% if current_tags %}#{{ current_tags }}{% endif %}
- 在您的
theme.liquid
布局中,就在 <\head>
之前添加此行 <script>var c_tag = decodeURI(window.location.hash)</script>
- 在您的面包屑相关代码中,为特定面包屑指定一个 ID。让我们在你的例子中说:
<span id='r_tag'>boys favors >></span>
.
在该跨度之后添加:
<script>if(c_tag == null || c_tag == $('#r_tag').innerHTML.replace(' >>','')){}
else { $('#r_tag').innerHTML = c_tag + ' >>' }</script>
请注意,如果超过 1 个 current_tags
,您必须相应地修改代码。
我为客户的 Shopify 网站创建了面包屑导航代码,显示
collection >> product tag >> product
例如:
tableware >> plates >> yellow-striped plates
我们使用产品标签来创建子类别。此面包屑导航不起作用的唯一情况是当一个产品被标记为一个集合下的两个不同子类别时。因此,例如,我们有集合 "party favors",它有子类别(产品标签)"girls favors" 和 "boys favors"。木制陀螺被标记为 "girls favors" 和 "boys favors"。因此,当遍历数组时,"boys favors" 首先出现并显示在产品页面上,当用户来自女孩喜欢的子类别和男孩喜欢的子类别时。我不能使用删除来删除 "boys favors",因为这也会为男孩喜欢的产品页面删除它。
我的 breadcrumb.liquid 页面有没有办法知道用户来自哪个 collection/producttag URL,然后我可以获取该信息并创建一个变量我可以创建条件代码周围显示正确的产品标签(在同一产品有两个不同的产品标签代表同一集合下的两个子类别的情况下)?
Shopify 不存储可变数据。它仅根据 URL 呈现页面。您可以结合使用 JS 和 liquid 代码来实现此功能
- 在您的
collection.liquid
模板或product-block.liquid
片段中找到链接到产品的a
标签。 - 在关闭
href
属性之前添加此代码{% if current_tags %}#{{ current_tags }}{% endif %}
- 在您的
theme.liquid
布局中,就在<\head>
之前添加此行<script>var c_tag = decodeURI(window.location.hash)</script>
- 在您的面包屑相关代码中,为特定面包屑指定一个 ID。让我们在你的例子中说:
<span id='r_tag'>boys favors >></span>
. 在该跨度之后添加:
<script>if(c_tag == null || c_tag == $('#r_tag').innerHTML.replace(' >>','')){} else { $('#r_tag').innerHTML = c_tag + ' >>' }</script>
请注意,如果超过 1 个 current_tags
,您必须相应地修改代码。