FROM CACHE - jp_header
解決済

Storefront APIでの在庫数取得について

akkey
新規メンバー
4 0 0

初めて質問させていただきます。

 

GatsbyとStorefront APIで開発を行っております。

gatsby-source-shopifyというライブラリを使用し、GraphQLでデータを取得し表示しています。
 
データの取得表示は問題なく行えているのですが、その中で商品の在庫数に該当する変数がわからず思案しております。
実際に取得しているコードが以下になります。
graphql`
query shopifyDetail($id: String) {
    shopifyProduct(shopifyId: { eq: $id }) {
      id
      shopifyId
      title
      description
      images {
        originalSrc
      }
      variants {
        price(locale: "ja")
        selectedOptions {
          name
          value
        }
      }
    }
  }
`
是非ご存知の皆様のお知恵をいただけますと幸いです。
何卒よろしくお願い致します。
1 件の受理された解決策
kazuki
観光客
9 3 8

成功

直接叩いたほうが簡単なような気がします

元の投稿で解決策を見る

5件の返信5

kazuki
観光客
9 3 8

variantsの中に `availableForSale` というフィールドがありますでしょうか?

https://www.gatsbyjs.org/packages/gatsby-source-shopify/#query-products

akkey
新規メンバー
4 0 0

variantsの中に `availableForSale` という値ございました。

返り値はtrueでした。

kazuki
観光客
9 3 8

あ、「在庫があるかどうか」と勘違いしてました。storefront APIを直接叩けるのであれば productに totalInventoryというフィールドがあるようですが、https://shopify.dev/docs/storefront-api/reference/object/product  

gatsby-source-shopifyからどのフィールドが使えるのかはよくわかってません

akkey
新規メンバー
4 0 0

そうですよね…。
`gatsby-source-shopify`のドキュメントにも該当する値が見当たらずでして。。。

 

最悪直接叩く方が良いですかね…?

kazuki
観光客
9 3 8

成功

直接叩いたほうが簡単なような気がします