如何选择产品变体并添加元数据以执行订单?

问题描述 投票:0回答:1

我使用 BookThatApp 的日期选择器和几个下拉菜单作为租赁运动器材的产品变体选项。通常,订单完成后,我必须根据产品变体选项进行手动计算,并使用它为客户选择合适的运动器材。我可以轻松地用 JavaScript 编写这个计算。我的目标是将此计算添加到订单中,以便在购买租赁后工作人员可以看到它。这可以是标签、元字段,甚至是另一个产品选项。

我的理解是 theme.liquid 代码是在初始页面渲染时执行的,无法检测何时选择下拉列表并运行计算 - 这是正确的吗?如果是这样,是否还有其他选择来完成此功能,或者挖掘第三方应用程序是唯一的方法吗?

到目前为止,这在我的 theme.liquid 中并不成功:

{%- if product.metafields.bookthatapp.json_config -%}
  <script
    src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.7.1/jquery.min.js"
    crossorigin="anonymous">
  </script>
  
  <script>
    jQuery('#bta-widget-container').on('theme:variants:changed', function(evt, variantObj){
       console.log('theme event detected');
       console.log(variantObj);
    }); 
  </script>
{%- endif -%}

{% render 'bookthatapp-widgets' %}

参考文献

shopify shopify-app shopify-template
1个回答
0
投票

你可以100%用JS进行计算。一旦页面呈现,当选择变体时,您就可以运行代码。您可以访问您想知道的所有内容,因为您可以将所有内部元字段数据呈现给 JS。因此,如果客户在变体 1、2 或 22 之间进行选择,您就会知道。做你的计算。将结果保存为表单中 HTML 输入元素中的行项目属性。现在,在您的订单中,该行项目将用您的计算结果进行装饰。答对了。你可以走了。

© www.soinside.com 2019 - 2024. All rights reserved.