Liquid Snippets by ALSEL
🔌 API連携/JSON出力/JS統合中級

カスタム要素の親コンポーネント

Web Components の親要素(`<parent-element>`)でラップし、子スニペットを描画するコンポーネント。カスタム要素に依存した構造を実装する際のテンプレート。

用途
Web Components ベースのコンポーネント構成で、親要素がカスタムロジックを持つ場合に使用。子要素の描画をこのスニペットで一元管理する。
設置場所
snippets/parent.liquid に配置し、別のスニペットやセクションから `{% render 'parent', children: '任意の内容' %}` で呼び出す。
注意点
`<parent-element>` はカスタム要素として JavaScript で定義される必要があり、HTML/CSS/JS ファイルが別途用意されていることが前提。children パラメータは文字列として受け取るため、複雑な Liquid 構文を渡す場合は子スニペット側で構造化する方が保守しやすい。カスタム要素が非対応ブラウザでは単純な div のように振る舞うので、フォールバック CSS を用意すると安全。
タグ:web-componentscustom-elementparent-childcomponentrender

コード

10 行 / liquid
{% doc %}
  Parent snippet that renders the children and depends on the parent-element custom element

  @param {string} children
{% enddoc %}

<parent-element>
  {% render "child", children: children %}
</parent-element>

出典・ライセンス

License:
MIT

このコードは Shopify 著作の MIT ライセンスソースです。 原本の著作権は Shopify が保有します。日本語訳は ALSEL によるものです。

関連項目

🔌 API連携/JSON出力/JS統合中級

定期販売プランのデータ属性生成

商品バリアントと定期販売プランの ID を HTML data 属性として動的に生成するスニペット。ループで複数プランの ID を data-sellingId-1、data-sellingId-2 のように番号付けして出力する。

📁 theme-tools·MIT·9
🔌 API連携/JSON出力/JS統合上級

javascript タグ内の JS コード整形

Liquid の `{% javascript %}` タグ内に記述した JavaScript コードを Prettier で自動整形する。純粋な JS であれば完全整形、Liquid 変数を含む場合はインデント調整のみで対応する。

📁 theme-tools·MIT·30
🔌 API連携/JSON出力/JS統合上級

JavaScriptタグ内のコード整形テスト

Liquid の {% javascript %} タグ内に埋め込まれた JavaScript コードを Prettier で整形するテストケース。純粋な JS、Liquid 混在、タブ設定、シングルクォート対応など複数のシナリオをカバーしている。

📁 theme-tools·MIT·38
🔌 API連携/JSON出力/JS統合上級

クイズ結果用の商品データとフィルタ条件を JSON 出力

選択したコレクションの全商品を JSON 形式で抽出し、クイズの回答ごとに設定されたフィルタ条件(価格・タグ・タイプ・ベンダー・オプション)と紐づけることで、JavaScript 側でリアルタイムに商品をマッチングできるようにする。

📁 Sections·MIT·93
🔌 API連携/JSON出力/JS統合上級

Vue コンポーネントのデモ

Vue コンポーネント、スロット、プロップ、Vuex ストア、グローバルミックス、カスタムディレクティブを一堂に展示するセクション。Shopify Theme Lab フレームワークの主要機能をインタラクティブに試せる。

📁 shopify-theme-lab·MIT·162
🔌 API連携/JSON出力/JS統合上級

サードパーティ製アプリの遅延読み込み最適化

Shopify に統合されたサードパーティ製アプリスクリプトの読み込み方式を管理画面から制御し、ページ表示速度を改善するセクション。スクロール、ユーザーインタラクション、または即座読み込みのいずれかに切り替えられる。

📁 Sections·MIT·769