解决 Shopify 产品集合页路由叠加问题的 SEO 影响

699 阅读2分钟

在现代电子商务中,SEO(搜索引擎优化)对于提升网站流量和增加销售额至关重要。然而,许多 Shopify 店主在使用产品集合页时,可能会遇到一个常见的问题:路由叠加。这种情况会导致生成多个不同的 URL 指向相同的产品页面,进而影响 Google 的 SEO 排名。本文将根据我自己的Shopify网站,探讨这一问题,并提供解决方案,给大家提供一些思路

什么是路由叠加问题?

当用户通过产品集合页(如新到货页面)点击进入产品详情页时,Shopify 会生成一个新的产品 URL。例如:

集合页 URL:icrochetit.com/collections…
详情页 URL:icrochetit.com/products/wh…
这两个 URL 指向相同的产品,但路径不同。这种情况不仅会在产品集合页中出现,有时在产品详情页后面还会带有一些杂乱的参数,形成不同 URL 的相同页面。例如,一件商品有多个颜色,不同颜色的 URL 可能为:

首选链接:www.shopify.com/product-1
其他颜色链接:www.shopify.com/product-1?v…
Google 在遇到这些情况时,可能会认为这些页面是重复内容,从而无法确定哪个页面应该获得权重,甚至可能会降低这些页面的 SEO 排名。

image.png

使用 Canonical 标签

为了解决这一问题,我们可以使用 canonical 标签。Canonical 标签能够帮助搜索引擎识别哪个是规范(首选)的 URL,即使存在多个 URL 指向相同的内容,也能避免内容重复的问题。具体操作如下:

在 main-product.liquid 文件的中添加以下代码:

<link rel="canonical" href="{{ shop.url }}{{ product.url }}">  

这段代码会动态生成正确的 canonical URL,指向当前的产品页面,无论用户通过哪个路径访问。

修改 URL 生成方式

虽然 canonical 标签可以帮助解决部分问题,但它并不能完全解决产品集合页中的路由叠加问题。为此,我们需要进一步修改 URL 的生成方式,删除所有 | within: collection 过滤器。在 product-grid-item.liquid 文件中,将原代码:

<a  
href="{{ product.url | within: collection }}"  
class="product-card__link js-product-link"  
title="{{ product.title }}"  
tabindex="-1"  
>  

修改为:

 <a  
href="{{ product.url }}"  
class="product-card__link js-product-link"  
title="{{ product.title }}"  
tabindex="-1"  
>  

通过删除 | within: collection 过滤器,我们确保了所有产品链接都指向规范的产品 URL,而不是带有集合路径的叠加 URL。

总结

Shopify 产品集合页的路由叠加问题可能会对 SEO 产生负面影响,但通过使用 canonical 标签和修改 URL 生成方式,我们可以有效地解决这一问题。