Liquid Snippets by ALSEL
📘 公式リファレンス🔧 リファレンス/フィルター中級

line_items_for フィルター(カート内の特定商品の行アイテムを抽出)

カート内のすべての行アイテムから、指定した商品またはバリアントに該当するものだけを配列で返すフィルター。商品単位またはバリアント単位での抽出に対応する。

用途
カート内に同じ商品が複数バリアント存在するとき、特定バリアントの合計数量を集計したり、商品ごとの小計を計算したりする場合。
設置場所
Liquid テンプレート内で `{{ cart | line_items_for: product }}` または `{{ cart | line_items_for: variant }}` の形で使用し、返された配列に対して `sum` フィルターなど後続処理を連鎖させる。
注意点
引数には product オブジェクトまたは variant オブジェクトのみ受け付ける。文字列型のハンドルや ID は使えないため、事前に `all_products` または `product.variants` から該当オブジェクトを取得しておく必要がある。返り値は line_item オブジェクトの配列なので、数量集計には `| sum: 'quantity'` 、価格合計には `| sum: 'final_line_price'` を組み合わせる。
タグ:cartline-itemproductvariantfilter

仕様

40 行 / json
{
  "category": "cart",
  "deprecated": false,
  "deprecation_reason": "",
  "description": "Accepts the following object types:\n\n- `product`\n- `variant`",
  "parameters": [],
  "return_type": [
    {
      "type": "array",
      "name": "",
      "description": "",
      "array_value": "line_item"
    }
  ],
  "examples": [
    {
      "name": "",
      "description": "",
      "syntax": "",
      "path": "/products/bloodroot-whole",
      "raw_liquid": "{% assign product = all_products['bloodroot-whole'] %}\n{% assign line_items = cart | line_items_for: product %}\n\nTotal cart quantity for product: {{ line_items | sum: 'quantity' }}",
      "parameter": false,
      "display_type": "text",
      "show_data_tab": true
    },
    {
      "name": "",
      "description": "",
      "syntax": "",
      "path": "/products/bloodroot-whole",
      "raw_liquid": "{% assign product = all_products['bloodroot-whole'] %}\n{% assign variant = product.variants.first %}\n{% assign line_items = cart | line_items_for: variant %}\n\nTotal cart quantity for variant: {{ line_items | sum: 'quantity' }}",
      "parameter": false,
      "display_type": "text",
      "show_data_tab": true
    }
  ],
  "summary": "Returns the subset of [`cart`](https://shopify.dev/docs/api/liquid/objects/cart) line items that include a specified product or variant.",
  "syntax": "cart | line_items_for: object",
  "name": "line_items_for"
}

出典・ライセンス

License:
MIT

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

関連項目

📘 公式リファレンス🔧 リファレンス/フィルター初級

avatar フィルター(顧客アバター画像HTML生成)

顧客アバターが存在する場合、それを表示する HTML タグを生成するフィルター。customer オブジェクトに対して使用する。

📁 theme-liquid-docs·MIT·19
📘 公式リファレンス🔧 リファレンス/フィルター初級

default_errors フィルター(フォーム送信エラーを日本語化)

form.errors の各エラーコードに対応する既定のエラーメッセージを自動生成するフィルター。フォーム送信時の入力値不正や必須項目空白などのエラーを言語別に出力する。

📁 theme-liquid-docs·MIT·19
📘 公式リファレンス🔧 リファレンス/フィルター初級

date フィルター(日付を指定形式でフォーマット)

日付値を指定されたフォーマット文字列に従って整形する。フォーマット文字列が空の場合は元の値がそのまま返される。入力が日付に変換できない場合も元の値が返される。

📁 theme-liquid-docs·MIT·19
📘 公式リファレンス🔧 リファレンス/フィルター初級

payment_terms フィルター(Shop Pay分割払いバナーを生成)

product フォームまたは cart フォームに対して使用し、Shop Pay の分割払いオプションを表示するための HTML を生成するフィルター。顧客が購入時に分割払いプランを選択できるようにする。

📁 theme-liquid-docs·MIT·19
📘 公式リファレンス🔧 リファレンス/フィルター初級

abs フィルター(数値の絶対値を取得)

負の数を正の数に変換する。数値の絶対値(ゼロからの距離)を返すフィルター。

📁 theme-liquid-docs·MIT·30
📘 公式リファレンス🔧 リファレンス/フィルター初級

append フィルター(文字列の末尾に追加)

文字列の末尾に別の文字列を連結するフィルター。URL パスの結合やテキストの接尾辞追加に使う。

📁 theme-liquid-docs·MIT·30