如何获取Shopify商店中任何产品的URL,因为如果它属于集合,其模式会有所不同?

时间:2014-08-21 05:47:18

标签: ruby shopify

对于不属于任何集合的产品,我们可以将网址定义为 - <shop-url>/products/< product.handle >。如果产品属于某个集合,则会更改为 - <shop-url>/collections/<collection-name>/products/< product.handle >。还有第三种情况吗?

如何处理这些案件。此外,当我拨打api电话时,我没有将产品名称附加到产品上,以便我可以自己构建网址。在通过api调用获取产品时,是否有通用的方法来获取产品URL?

我想知道为什么shopify不直接提供产品网址!有什么理由吗?

修改

我刚刚意识到,即使产品与集合相关联,我们也可以将其网址设为<shop-url>/products/< product.handle >;和<shop-url>/collections/<collection-name>/products/< product.handle >是一回事。两个不同的网址但页面相同?

3 个答案:

答案 0 :(得分:5)

在液体中,您可以使用product.url访问产品的网址,该网址会输出/products/handleIt doesn't look like the URL is available via the API,但您可以使用产品的句柄轻松构建网址(您可以通过API获取)。

答案 1 :(得分:1)

你是对的,产品可以有很多URL,这就是为什么在你的产品html的头部包含一个规范的URL很重要。

答案 2 :(得分:0)

对于那些需要手动建立液体产品链接的人来说,这就是表达式:

{% assign url = "/collections/" | append: collection.handle | append: "/products/" | append: product.handle %}

此过滤器也适用:

{{ product.url | within: collection }}