标签: shopify

如何更新shopify line_item上的属性

如何使用shopify api更新特定line_item的属性?

似乎没有一种方法可以直接更新特定的订单项.

然后我尝试更新整个订单对象,但似乎它没有保存我的属性.如果我使用以下json保存订单,api将返回完整的订单对象,但我的line_items有一个空属性[]行.

{"order":{"id":94202342,"line_items":[{"id":615546756,"variant_id":627937216,"properties":[{"my_test_key":"This_is_a_test"}]}]}}
Run Code Online (Sandbox Code Playgroud)

api shopify

8
推荐指数
1
解决办法
1163
查看次数

是否可以将对象初始化为液体中的变量?

我对 Liquid 环境相当陌生,想知道您是否可以像 JS 一样在 Liquid 文件中启动对象变量?

let person = [{
    'name' : 'John Doe',
    'age' : '20'
}];
Run Code Online (Sandbox Code Playgroud)

我知道液体正在使用 {% allocate %} 那么它有什么工作方法吗

{% assign person = [{
    'name' : 'John Doe',
    'age' : '20'
}]; %}
Run Code Online (Sandbox Code Playgroud)

这是直接初始化它,而不从元字段中提取任何数据。

提前致谢!

liquid shopify

8
推荐指数
2
解决办法
1万
查看次数

使用Shopify API获取当前产品ID以进行Javascript API调用

我正在开发Shopify应用程序,该应用程序使用Shopify的DaisyAPI动态图像服务.为了正确调用Daisy API,我需要知道客户正在查看哪些产品.似乎,为了可靠地做到这一点,我将需要操纵他们的product.liquid主题来插入包含Product ID的隐藏值,以便Jquery可以获取该值并将其插入到API调用中.

什么是确保每个产品页面都包含产品ID的最佳方法,jQuery可以通过这种方式可靠地找到它?我忽略了一些明显的东西吗

非常感谢!

shopify

7
推荐指数
2
解决办法
3183
查看次数

Shopify:获取OAuth访问令牌的问题

我已经在OAuth的第1步中检索了授权代码而没有任何问题,但是对于我的生活,我无法完成一个帖子来获取访问令牌.我总是得到同样的错误:

content: "{"error":"invalid_request","error_description":"Could not find Shopify API appli... (length: 103)"

这是我的代码看起来像... Meteor.http.post是一个标准的发布请求.我没有运气就尝试过各种各样的组合.我正在开发localhost:

var url = 'https://' + shopName + '/admin/oauth/access_token';    
var data = { client_id: apiKey, client_secret: secret, code: code };

Meteor.http.post(url, data,
    function(error, result) {
        debugger;
    });
Run Code Online (Sandbox Code Playgroud)

Meteor.post是此处记录的标准服务器端发布请求.我尝试过params(比如Node Wrapper),一个数组(比如PHP)和其他东西的组合.我不知道.

是因为我正在开发localhost,而服务器调用现在需要https吗?我的帖子数据结构错了吗?

我做错了什么其他的想法?

shopify oauth-2.0 meteor

7
推荐指数
1
解决办法
1321
查看次数

Tampermonkey忽略了@exclude

我正在使用Tampermonkey 翻译Shopify的仪表板/管理员.

出于安全考虑,Shopify管理员仪表板的某些部分我不想使用Tampermonkey.商家创建的文本(产品,页面,集合,模板......)是Tampermonkey取代的,这是非常危险的.

有两种方法可以解决这个问题:

  1. "Instruct"Tampermonkey不翻译表单内的内容.(这似乎是最好的方法)
  2. 使用该@exclude指令.

我使用了后者,但脚本没有收听@exclude.这是用户脚本:

// ==UserScript==
// @name       Shopify_Admin_Spanish
// @namespace  http://*.myshopify.com/admin
// @version    0.1
// @description  Tu tienda Shopify, por detrás, en español!
// @exclude    https://*.myshopify.com/admin/products
// @exclude    https://*.myshopify.com/admin/collections
// @exclude    https://*.myshopify.com/admin/blogs
// @exclude    https://*.myshopify.com/admin/pages
// @exclude    https://*.myshopify.com/admin/themes
// @match      https://*.myshopify.com/*
// @copyright  microapps.com
// ==/UserScript==
Run Code Online (Sandbox Code Playgroud)

PS.我使用谷歌浏览器进行了所有检查,并且不愿意使用任何其他浏览器.

javascript google-chrome shopify tampermonkey

7
推荐指数
1
解决办法
3114
查看次数

Shopify + Mixpanel集成

我使用Shopify作为我的商店页面来销售商品,Mixpanel集成在整个购买过程中跟踪用户.有4个不同的活动:产品已查看,已添加到购物车,开始结帐和订单已完成.

在实时视图中,所有这些都相应地出现,但我的问题是,当用户完成结账时,Mixpanel似乎正在分配完全不同的distinct_id.因此,在"漏斗"部分中,由于ID不同,用户在途中丢失,因此未显示完成率.

我在附加内容和脚本部分中有以下代码(以及启动Mixpanel代码):

<script type="text/javascript">
mixpanel.track("Checkout",
        { "Checkout Total": "{{ total_price | money_without_currency }}" });

mixpanel.identify({{ customer.id }});

mixpanel.people.set({
  "$name": "{{ customer.first_name }} {{ customer.last_name }}",
  "$email": "{{ customer.email }}",
  "last_updated": new Date()
});

mixpanel.people.track_charge({{ total_price | money_without_currency }});
</script>
Run Code Online (Sandbox Code Playgroud)

用户没有注册,我在Shopify主题中的其他必要代码段中使用'customer.id'.

有谁知道如何解决这个问题所以我可以看到Funnels的完整用户旅程与完成率?

javascript shopify mixpanel web

7
推荐指数
2
解决办法
2737
查看次数

Shopify:感谢页面上的变量?

我在Shopify上有一小段代码,感谢您建立一个家庭成长系统.在过度简化的术语中,它输出带有使用该{{id}}字段的模板代码的URL .

<p>
    Your order information is {{id}}!  This is not the actual code, 
    this is just an oversimplified version for this question
</p>
Run Code Online (Sandbox Code Playgroud)

直到几周前,{{id}}模板变量将输出订单对象的ID.我使用此ID和Shopify RESTapi来获取订单信息.现在,由于我不清楚的原因,这会输出一个看起来像是不同的数字checkout-id.

这是预期的行为吗?反正有没有获得旧的,真实的订单对象ID?我可以想出很多解决这个问题的方法,但是我宁愿不搞乱过去5年以稳定的方式运作的系统.

rest shopify

7
推荐指数
1
解决办法
969
查看次数

如何在Liquid中定义全局变量?

现在,我创建的变量似乎无法跨文件进行通信.

liquid shopify

7
推荐指数
3
解决办法
4309
查看次数

使用Shopify在购物车中添加产品

我有一个基于产品的网站构建在WordPress,我已经使用shopify添加到购物车,但有一些问题,以添加多元产品.

我正在使用此脚本添加到购物车

 function buyButtonClickHandler(evt) {
 evt.preventDefault();
 evt.stopImmediatePropagation();
 var id = product.selectedVariant.id; 
 var id = evt.target.id; 
 var quantity;
 var cartLineItem = findCartItemByVariantId(id);
 quantity = cartLineItem ? cartLineItem.quantity + 1 : 1;
 addOrUpdateVariant(product.selectedVariant, quantity);
 setPreviousFocusItem(evt.target);
 $('#checkout').focus();


 }
Run Code Online (Sandbox Code Playgroud)

这用于产品的更新数量

 function updateQuantity(fn, variantId) {
    var variant = product.variants.filter(function (variant) {
        return (variant.id === variantId);
    })[0];
    var quantity;
    var cartLineItem = findCartItemByVariantId(variant.id);
    if (cartLineItem) {
        quantity = fn(cartLineItem.quantity);
        updateVariantInCart(cartLineItem, quantity);
    }
}
Run Code Online (Sandbox Code Playgroud)

任何好友都有一个想法,请帮忙.

shopify

7
推荐指数
1
解决办法
309
查看次数

Shopify 店面 API。将商品添加到购物车

我使用 Shopify 店面 API 来查询产品列表并将所选项目添加到购物车。

我能够使用 API 列出所有产品,并返回找到的产品的变体 ID

这是返回产品的 GraphQL 查询

{
  shop {
    name
    products(first: 1, query:"title=configurable-handmade-concrete-ball") {
      edges {
        cursor
        node {
          id
          title
          handle
          variants(first:1) {
            edges {
              node {
                id
                title
              }
            }
          }
        }
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

结果

{
  "data": {
    "shop": {
      "name": "VonageTest",
      "products": {
        "edges": [
          {
            "cursor": "eyJvZmZzZXQiOjF9",
            "node": {
              "id": "Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0LzEwNTU2MjYxNTE4",
              "title": "Configurable Handmade Concrete Ball",
              "handle": "configurable-handmade-concrete-ball",
              "variants": {
                "edges": [
                  {
                    "node": {
                      "id": "Z2lkOi8vc2hvcGlmeS9Qcm9kdWN0VmFyaWFudC80MDIwOTc1NjQzMA==",
                      "title": …
Run Code Online (Sandbox Code Playgroud)

shopify graphql

7
推荐指数
2
解决办法
4959
查看次数