← inaro.devShopify学習ツール
06-09

スニペットとrender・LiquidDoc

スニペットをrenderで呼び出し、引数のスコープとLiquidDocの書き方を説明できる

最終確認: 2026-09

解説

受託の現場でなぜ必要か: この回では、スニペット(再利用する小さな部品)をrenderで呼び出し、引数の渡し方とLiquidDocの書き方が分かります。
受託では、renderの隔離を知らずに書くと、呼び出し元の変数が見えず「動かない」でつまずきます。

スニペットとは、引数で値を受け取る再利用部品

スニペットは、snippets/に置く再利用部品です。
商品カード・価格表示・アイコンのように、同じ表示を複数の場所で使うものを切り出します。
セクションとの違いは、エディタの設定(schema)を持たず、引数で値を受け取ることです。

renderは、渡した変数しか見えない

スニペットは、{% render 'name', key: value %}で呼びます。
呼び出し側の変数は、自動では見えません。
必要な値は、明示的に渡します。

この隔離があるから、どこから呼んでも同じ結果になります。
{% render 'card' for products as product %}の繰り返し形や、withの別名渡しもあります。

LiquidDocを書くと、渡し忘れを機械が見つける

スニペットやブロックの冒頭に{% doc %}を置き、@param {型} 名前 - 説明@exampleを書きます。
VS Code拡張が引数を補完し、Theme Checkが渡し忘れや型違いを検出します。
@param {string} [url]のように角括弧で囲むと、省略できる引数になります。
省略時の既定値は、defaultフィルタで与えます。
受託では、チーム内の仕様書の代わりになります。

発展:旧タグincludeは使わない

旧タグの{% include %}は、呼び出し元の変数をすべて共有し、性能も劣ります。
Theme Checkが警告します。
既存テーマで見かけたら、暗黙で使っていた変数を洗い出してから、renderに置き換えます。

ステップ1 / 2

ShopifyはShopify Inc.の商標です。本サイトは個人が制作した非公式の学習教材であり、同社の承認・提携・後援を受けていません。記載内容は2026-09時点のものです。料金・上限値・管理画面のラベルは変わるため、作業の前に公式ドキュメントで確認してください。