Liquid、JavaScriptなどに関する質問
・特定 vendor値のvariant id を取得したいです。
・無理ならばデータに入っている全てのvariant id を取得したいです。
■https://kenkengems.myshopify.com/admin/variants.json?fields=sku,id&limit=250&page=2
上の情報ですが、ブラウザでは表示されますが、プログラム(PHP)からのアクセスでは情報が取得できないでおります。
file_get_contentes やcurlも試しましたが、取得できません。
PHPで取得できるサンプルコード等はありますでしょうか?
■特定のproduct IDからvariant id を取得するAPIがあるのは知っています。
vendor番号から商品IDを取得するAPIはありますでしょうか?
詳しい方教えてください。
解決済! ベストソリューションを見る。
成功
■https://kenkengems.myshopify.com/admin/variants.json?fields=sku,id&limit=250&page=2
上の情報ですが、ブラウザでは表示されますが、プログラム(PHP)からのアクセスでは情報が取得できないでおります。
file_get_contentes やcurlも試しましたが、取得できません。
PHPで取得できるサンプルコード等はありますでしょうか?
上記はAPIではなく、管理画面にログインしているブラウザでしか表示されないJSONのため、
外部サーバーから読み込むことは出来ません(セキュリティ突破すれば出来ますが危険です)。
/admin/api/2020-10/products.json?fields=vendor,variants
プライベートアプリからAPIキーとパスワード取得後、上記の「Product API」を使い、
vendorとvariantsに絞って取得してみてはどうでしょうか?
https://shopify.dev/docs/admin-api/rest/reference/products/product#index-2020-10
成功
■https://kenkengems.myshopify.com/admin/variants.json?fields=sku,id&limit=250&page=2
上の情報ですが、ブラウザでは表示されますが、プログラム(PHP)からのアクセスでは情報が取得できないでおります。
file_get_contentes やcurlも試しましたが、取得できません。
PHPで取得できるサンプルコード等はありますでしょうか?
上記はAPIではなく、管理画面にログインしているブラウザでしか表示されないJSONのため、
外部サーバーから読み込むことは出来ません(セキュリティ突破すれば出来ますが危険です)。
/admin/api/2020-10/products.json?fields=vendor,variants
プライベートアプリからAPIキーとパスワード取得後、上記の「Product API」を使い、
vendorとvariantsに絞って取得してみてはどうでしょうか?
https://shopify.dev/docs/admin-api/rest/reference/products/product#index-2020-10
すみませんもう一つ壁に当たりまして、教えてください。
1ページは最大250データ取得可能のようですが、
全ページのデータを取得するには、下のようにsince_idを順番に変えて取得するしかないのでしょうか、
それとsince_idのidはproduct_id でしょうか、
/admin/api/2020-10/products.json?fields=vendor,variants?limit=250&since_id=******
よろしくお願いします。
> ?fields=vendor,variants?limit=250&since_id=
まず「?」が2つありますのでこのURLは正しくありません。引数を繋ぐのは「&」になります。
エンドポイントの「since_id」ですがプロダクトIDではなくバリアントIDです。(A商品のSサイズで白色、等)
詳しくはヘルプをご覧ください。
https://shopify.dev/docs/admin-api/rest/reference/products/product-variant
>1ページは最大250データ取得可能のようですが、
Shopifyに限らず一度に取得できる件数には制限があります。
次のページにデータがある場合は、
レスポンスヘッダ情報の中にある「rel="next"」からURLを取得し、再度リクエストすることで取得出来ます。
但し、プラン x APIの種類 で各々レート制限がありますので、
全てのデータを取得するためには、リクエスト毎にレスポンスヘッダを判別しながら、
レートを回避しながら次々とリクエストし続ける必要があります。
他にも色々な制限がありますが、詳しくはヘルプをご覧ください。
https://shopify.dev/concepts/about-apis/rate-limits
ありがとうございます。本当に助かります。
いただいた情報をもとに進めていて、添付は、レスポンスヘッダーですが、
[18]に、rel="next" があります。
次のページはこの長いURLという事でしょうか?
教えてください m(_ _)m
はい、それです。
日本の弁当文化は約1200年前に遡る。日本の食文化の一つとして人々を魅了し続けてきた、小さいな箱に詰まったお弁当。今では海外でも大変人気を集めています。そんな独特な日本文化を世界へ...
By rinaflora Mar 26, 20232月に、新しい英語版AMAディスカッションボードで2週間にわたって初めてのコミュニティAMAを開催しました。
By SarahF_Shopify Mar 19, 2023不正注文やチャージバック被害はビジネスへ大きな被害を与えます、このブログでは簡単な防止策を紹介し、ストア保護を最適化します
By Mirai Mar 13, 2023