【问题标题】:How to update product variant image from front end in shopify如何在shopify中从前端更新产品变体图像
【发布时间】:2020-05-26 12:37:21
【问题描述】:

抱歉,如果之前有人问过这个问题,我是 Shopify 开发的新手,我已经在我的 Shopify 商店中实施了第三方设计工作室,我想将设计的产品图片添加到购物车,而不是默认产品图片。

我为此创建了产品属性,并将该属性与产品使用属性一起添加到购物车中,我能够在购物车页面中显示设计的图像,但不能在结帐页面和与订单相关的电子邮件中显示。 因此,现在我已经从管理员在产品中创建了变体,并希望从前端更新其图像,就像我将自定义图像添加到产品变体图像时一样,该图像将在购物车结帐和订单电子邮件中显示正确的图像。因此,我想在用户添加设计时为其添加动态图像,我想在产品变体中更新该图像。

在 Ajax 下方,我用于将产品添加到购物车但无法正常工作,它添加了具有选定变体的产品,但没有更新图像,即使我也尝试使用更新的特色图像 src。没有任何作用

<script>
     cartdata =  {
          "quantity": 1,
          "id": 31708393013302,
          "featured_image": {
               "url" : "mycustomimageurl",
               "aspect_ratio" : 1.0,
               "alt" :productTitle,
          },
          "image" : "mycustomimageurl",
     }
     $.ajax({
          type: 'POST',
          url: '/cart/add.js',
          data: cartdata,
          dataType: 'json',
          success: function(data_res) {

               window.open('/cart', '_blank');
          });
</script>

【问题讨论】:

    标签: ajax shopify shopify-template


    【解决方案1】:

    如 cmets 中所述,只有 Shopify Plus 可以修改 checkout.liquid。

    您还可以通过 Shopify API 替换产品的主图片。 (您需要创建一个 3rd 方应用程序来做到这一点)。但是问题是,它将为所有用户替换该产品的主图像。如果我理解正确,您希望为每个不同的用户提供自定义图像,对吗?

    在这种情况下,我剩下的唯一想法是一个肮脏的 hack,如果 2 个用户同时订购相同的产品,它将无法工作。这个想法是:不要将 shopify 用于产品图片。而是从其他地方获取图像。然后,一旦客户想要订购此自定义商品,您将其保存为 shopify-productimage(通过 API),然后在下订单后将其删除。同样,如果 2 个用户同时执行此操作,他们将覆盖彼此的图像。所以这不是一个好的解决方案!

    【讨论】:

      【解决方案2】:

      您无法使用标准请求从前端更新产品/变体图像。

      如果可以的话,这将是一个安全问题。

      您可以将图像作为产品属性传递,并在结帐过程中将其替换为液体替换(这可能很难,因为整个产品网格将是一个单一的液体标签)或 javascript。但是您需要一个 Shopify PLUS 帐户(每月 1000 美元)才能修改结帐。

      【讨论】:

      • 好的,你能提供我在结帐过程中如何用液体替换来替换它
      • @jhayce 你有 PLUS 帐户吗?如果你不这样做,什么都不会起作用。
      • 不,我没有 PLus 帐户
      • @jhayce 所以不,您不能在结帐时以任何方式更改此功能。至于订单通知,我不是这方面的专家,但您需要查看通知变量并在那里更改流动逻辑help.shopify.com/en/manual/sell-online/notifications/…
      • 这只能在 Shopify Plus 账户中实现,如果我需要将我的订单详细信息发送给第 3 方,在这种情况下,它会发送设计图像还是默认产品图像。
      猜你喜欢
      • 2020-09-05
      • 2020-06-14
      • 2016-06-11
      • 2016-08-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-11
      • 1970-01-01
      相关资源
      最近更新 更多