0

使用している卸売業者からのライブxmlフィードを使用して、製品バリアントの在庫レベルを自動的に更新したいShopifyストアがあります。

私はプログラミング(Ruby)を学んでおり、これは私の最初のプロジェクトですが、ここで調査した後、それがどのように機能するかを考えています。

Ruby / Nokiaを使用して卸売業者からのXMLフィードを解析し、次にXpathを使用して一意の製品バリアントSKUコードと在庫レベルの両方を見つけます。

どういうわけか、このSKUを使用してShopifyストアの製品XMLリストを参照し、SKUコードを使用してバリアントの一意のIDを引き出す必要があります。

次に、ビルダーgemのようなものを使用してshopifyが必要とするXML形式を構築し、curlを使用して変更をPUTします。私はすべての製品に対してこのプロセスをループしていると思いますか?

Shopifyには300の呼び出し制限しかないことを知っているので、スクリプトに遅延を入れることに関する記事がありますが、上記の方法がこれを行う最も簡単な方法ではないと感じていますか?

Shopifyでは、一意のバリアントxmlファイルに対してバリアント在庫レベルの更新を適用する必要があるため、一意のxmlファイル/コードを作成して/admin/variants/#[thevariantid].xmlに対してPUTする必要があります。

私はこれをまとめてその過程で学ぶことを楽しみにしていますが、私はこれで正しい軌道に乗っていますか?私が見なければならないもっと単純な宝石はありますか?

nb私は最近Rubyを学び始めたばかりで、その後Railsに向かいます。XMLとその構造について少し知っているので、XPathで必要なものを見つけても大丈夫です。

4

2 に答える 2

3

あなたは正しい方向に進んでいますが、XMLとURIを自分で作成する代わりに、shopify_api gemを使用してShopifyとの通信を行います:https ://github.com/Shopify/shopify_api

API呼び出しの制限に関しても役立つ可能性のある記事がウィキにありますが、より多くのスペースが必要な場合はお知らせください。非常に柔軟であり、スクリプトが乱暴になって影響を与えるのを防ぐために制限があります。他のすべての人のためのサービス。

于 2011-01-04T15:31:12.823 に答える
0

Nokogiriには非常に優れたXML構築機能が組み込まれているため、「ビルダー」gemを使用する必要がないことを除けば、提案されたパスは適切なようです。

于 2011-01-04T15:13:20.770 に答える