【问题标题】:Retrieve product by handle with Shopify Javascript Buy SDK使用 Shopify Javascript Buy SDK 通过句柄检索产品
【发布时间】:2016-09-26 23:42:19
【问题描述】:

我正在将 Shopify 商店实施到 WordPress 主题中,我需要一种方法来使用产品句柄而不是 ID 来查询 Shopify 产品,如他们的文档中所示:

http://shopify.github.io/js-buy-sdk/api/classes/ShopClient.html#method-fetchProduct

这样做的原因是我希望拥有一个带有 SEO 友好 URL 的单一产品视图,该 URL 正是根据产品句柄构建的。

在 Shopify 的网站上,有人提到了一种未记录的方法来实现这一点,但我无法让它发挥作用: https://ecommerce.shopify.com/c/shopify-apis-and-technology/t/how-do-i-query-for-a-product-using-its-handle-322118#comment-346792

有人遇到过这种情况吗?

【问题讨论】:

    标签: javascript shopify


    【解决方案1】:

    据我所知,API 中没有办法做到这一点。您最终可能不得不存储 ID 到句柄的映射,并通过 webhook 保持该映射更新。

    【讨论】:

    • 我担心会是这种情况,目前正在等待来自 Spotify 的反馈,但这可能是我最终不得不做的事情,考虑到类别也会发生同样的问题,这很糟糕。
    【解决方案2】:

    我认为fetchQueryProducts() 是您正在寻找的。举个例子:

    var shopClient = ShopifyBuy.buildClient({
      apiKey: 'my_key',
      myShopifyDomain: 'your_myshopify_domain',
      appId: 6
    });
    
    shopClient.fetchQueryProducts({handle: 'your_product_handle'}).then(function(products) {
      // Your product is at products[0] if successful
    });

    【讨论】:

    • 哦,哇,这确实有效,即使 Shopify 告诉我它不会:D
    【解决方案3】:

    您可以使用它按句柄获取产品。

    client.product.fetchByHandle(handle).then(
            product => { // Your product },
            error => { // error },
    )
    

    【讨论】:

    • 注意,这是针对buy sdk的v1。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多