graphql - 无法使用 StoreFront GraphQL API 获取产品元字段
问题描述
我正在为我的 Shopify 商店使用店面 API。并且需要为我的产品检索产品元字段。我已经使用 3rd 方应用程序(Metafields Guru)添加了元字段。
我需要为产品获取所有这些元字段,并且一直在关注这篇文章。 https://shopify.dev/tutorials/retrieve-metafields-with-storefront-api
{
productByHandle(handle: "xxx-handle") {
id
title
handle
productType
metafields(first: 5) {
edges {
node {
key
value
}
}
}
}
}
但是我得到了一个用于元字段的空数组。不知道我在这里缺少什么。任何帮助,将不胜感激
解决方案
这里有几个问题。
- 创建元字段时,必须将它们分配给命名空间。当您尝试使用 Storefront API 检索它们时,您必须提供此名称空间,但您没有这样做。
- 即使您使用某些应用程序在管理员中创建元字段,您也不会使用 Storefront API 看到它们,除非您使用特殊标志将它们打开。
所以这也可能是一个错过的步骤。阅读此内容并注意 MetafieldStorefrontVisibility。您将命名空间和键设置为可见。这意味着如果没有仔细考虑打开或关闭每个元字段以访问 Storefront API,您可能不会随意创建元字段。
推荐阅读
- scilab - 在 xcos/scicos 中包含一个 Scilab 函数/脚本作为块
- matlab - 嵌套for循环不输出内部循环的值
- microsoft-cognitive - 教程语音意图识别不起作用?
- angular - 同时在 chrome 和 IE11 中支持 Angular Element 的问题
- java - Spark:使用分隔符进行拆分不适用于逗号
- java - 无法使用 java 在 Linux 中解压缩 Web 服务响应
- angular - console.log 不显示使用 PUT 方法编辑的输入
- java - 微调器中的 setError 消息时出错。如何seterror spinner?
- vue.js - 在组件内部使用时未定义 Dropzone
- javascript - 有和没有异步等待的firebase数据库事务有什么区别?