FROM CACHE - jp_header
このコミュニティはピアツーピアサポートに移行しました。Shopify サポートは今後、このコミュニティへのサービスを提供いたしません。これからもぜひ、他のマーチャントやパートナーとつながり、サポートし合い、経験を共有してください。 当社の行動規範に違反する行動や削除を希望するコンテンツがありましたら、引き続きご報告ください

外部APIを実行し、結果をLiquid上に反映したい

解決済

外部APIを実行し、結果をLiquid上に反映したい

heine
Shopify Partner
4 0 0

現在テーマファイル(Liquid)の開発を進めています。
別途用意されたDBからデータを持ってくる必要がありREST APIが用意されているのですが、この実行結果をLiquid上で呼び出し、表示したいと考えています。
Liquid上に直接記載できる必要はなく、何らかのアプリを経由しても構いません。開発が必要であっても、既存のものでも結構です。
headlessのように、外部(自作)APIを実行することはできないでしょうか?

なお、その際URLに含まれるクエリなどをAPIに渡せると尚良いと考えています。

以下、特記事項です

1. JSで実行するとクライアント側でのレンダリングになりますので、できればバックエンドで実行したいと考えています
2. Headless(Next.js/Nuxt.jsなどでSSR・SSGする)も考えたのですが、他で使用するアプリがAPI対応しておらず不適と判断しました

恐れながら、Shopifyには精通しておりません。
上記認識がそもそも間違っている場合は、遠慮なくご指摘ください。

ご回答よろしくお願いいたします。

1 件の受理された解決策

_osamu_iwasaki_
Shopify Partner
189 47 195

成功

Liquidでは、別のシステムにあるデータの読み込みは出来ません。
JavaScriptであれば、別のシステムにあるデータを読み込んだ後にHTMLの書き換えが出来ます。

Shopify上で別のシステムのデータを表示したいのであればJavaScriptしかないですが、
別のシステム上でShopifyのデータを表示したいのであればShopifyAPIを取得して自由に使えると思います。

元の投稿で解決策を見る

2件の返信2

_osamu_iwasaki_
Shopify Partner
189 47 195

成功

Liquidでは、別のシステムにあるデータの読み込みは出来ません。
JavaScriptであれば、別のシステムにあるデータを読み込んだ後にHTMLの書き換えが出来ます。

Shopify上で別のシステムのデータを表示したいのであればJavaScriptしかないですが、
別のシステム上でShopifyのデータを表示したいのであればShopifyAPIを取得して自由に使えると思います。

heine
Shopify Partner
4 0 0

回答いただきましてありがとうございました。やはりLiquidでは別のシステムから持ってくることはできないのですね。
前述の通り、headlessにするにはアプリ側で制限がありますし、
カスタムアプリを作成することも考えたのですが、その場合URLの自由度が下がるため、順当にjavascript内で実行することにします。

この度は本当に助かりました。またよろしくお願いいたします。