Liquid Snippets by ALSEL
📘 公式リファレンス📦 リファレンス/オブジェクト中級

external_video オブジェクト

YouTube または Vimeo などの外部動画プラットフォームでホストされた動画情報を扱うオブジェクト。動画 ID、ホストサービス、アスペクト比、プレビュー画像などのプロパティを持つ。

用途
商品詳細ページで外部動画メディアを表示するとき。product.media 配列からフィルタリングして、動画の iframe タグ出力やプレビュー画像の取得に使う。
設置場所
Liquid テンプレート内で `{{ product.media | where: 'media_type', 'external_video' }}` のように product.media 配列をフィルタリングしたうえで、`{{ external_video.external_id }}`、`{{ external_video.host }}`、`{{ external_video.preview_image }}` などのプロパティにアクセスする。出力には `external_video_tag` フィルタを使用。
注意点
external_video オブジェクトは product.media 配列内にのみ存在し、単独では参照できない。動画を iframe で出力するには `external_video_tag` フィルタを必ず使うこと。preview_image にはオブジェクト ID がないため、画像を同一キーで管理する場合は注意が必要。ホスト値は 'youtube' または 'vimeo' に限定される。
タグ:productmediaexternal-videoyoutubevimeo

仕様

171 行 / json
{
  "access": {
    "global": false,
    "parents": [
      {
        "object": "product",
        "property": "media"
      }
    ],
    "template": []
  },
  "deprecated": false,
  "deprecation_reason": "",
  "description": "> Tip:\n> Use the [`external_video_tag` filter](/docs/api/liquid/filters/external_video_tag) to output the video in an\n> HTML `<iframe>` tag. Use the [`external_video_url` filter](/docs/api/liquid/filters/external_video_url) to specify parameters\n> for the external video player.",
  "properties": [
    {
      "deprecated": false,
      "deprecation_reason": "",
      "description": "",
      "examples": [],
      "return_type": [
        {
          "type": "string",
          "name": "",
          "description": "",
          "array_value": ""
        }
      ],
      "summary": "The ID of the video from its external source.",
      "name": "external_id"
    },
    {
      "deprecated": false,
      "deprecation_reason": "",
      "description": "",
      "examples": [],
      "return_type": [
        {
          "type": "number",
          "name": "",
          "description": "",
          "array_value": ""
        }
      ],
      "summary": "The aspect ratio of the video as a decimal.",
      "name": "aspect_ratio"
    },
    {
      "deprecated": false,
      "deprecation_reason": "",
      "description": "",
      "examples": [],
      "return_type": [
        {
          "type": "string",
          "name": "youtube",
          "description": "",
          "array_value": ""
        },
        {
          "type": "string",
          "name": "vimeo",
          "description": "",
          "array_value": ""
        }
      ],
      "summary": "The service that hosts the video.",
      "name": "host"
    },
    {
      "deprecated": false,
      "deprecation_reason": "",
      "description": "",
      "examples": [],
      "return_type": [
        {
          "type": "string",
          "name": "",
          "description": "",
          "array_value": ""
        }
      ],
      "summary": "The alt text of the external video.",
      "name": "alt"
    },
    {
      "deprecated": false,
      "deprecation_reason": "",
      "description": "",
      "examples": [],
      "return_type": [
        {
          "type": "number",
          "name": "",
          "description": "",
          "array_value": ""
        }
      ],
      "summary": "The ID of the external video.",
      "name": "id"
    },
    {
      "deprecated": false,
      "deprecation_reason": "",
      "description": "",
      "examples": [
        {
          "name": "Filter for media of a specific type",
          "description": "You can use the `media_type` property with the [`where` filter](/docs/api/liquid/filters/where) to filter the [`product.media` array](/docs/api/liquid/objects/product#product-media) for all media of a desired type.\n",
          "syntax": "",
          "path": "/products/potion-beats",
          "raw_liquid": "{% assign external_videos = product.media | where: 'media_type', 'external_video' %}\n\n{% for external_video in external_videos %}\n  {{- external_video | external_video_tag }}\n{% endfor %}",
          "parameter": false,
          "display_type": "text",
          "show_data_tab": true
        }
      ],
      "return_type": [
        {
          "type": "string",
          "name": "",
          "description": "",
          "array_value": ""
        }
      ],
      "summary": "The media type of the external video. Always returns `external_video`.",
      "name": "media_type"
    },
    {
      "deprecated": false,
      "deprecation_reason": "",
      "description": "",
      "examples": [],
      "return_type": [
        {
          "type": "number",
          "name": "",
          "description": "",
          "array_value": ""
        }
      ],
      "summary": "The position of the external video in the [`product.media`](/docs/api/liquid/objects/product#product-media) array.",
      "name": "position"
    },
    {
      "deprecated": false,
      "deprecation_reason": "",
      "description": "> Note:\n> Preview images don't have an ID attribute.",
      "examples": [],
      "return_type": [
        {
          "type": "image",
          "name": "",
          "description": "",
          "array_value": ""
        }
      ],
      "summary": "A preview image of the media.",
      "name": "preview_image"
    }
  ],
  "summary": "Information about an external video from YouTube or Vimeo.",
  "name": "external_video",
  "examples": [],
  "json_data": {
    "path": "/products/potion-beats",
    "handle": "product.featured_media",
    "data_from_file": ""
  },
  "return_type": []
}

出典・ライセンス

License:
MIT

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

関連項目

📘 公式リファレンス📦 リファレンス/オブジェクト初級

content_for_header オブジェクト

Shopify が必要とするスクリプト(分析・チェックアウト・言語設定など)をすべて動的に出力するオブジェクト。theme.liquid の <head> タグ内に埋め込む必須要素。

📁 theme-liquid-docs·MIT·20
📘 公式リファレンス📦 リファレンス/オブジェクト中級

metaobjects オブジェクト

ストア全体のメタオブジェクト定義にアクセスするグローバルオブジェクト。個別のメタオブジェクトはタイプとハンドルで参照でき、メタオブジェクト定義のエントリをループで反復処理できる。

📁 theme-liquid-docs·MIT·20
📘 公式リファレンス📦 リファレンス/オブジェクト初級

additional_checkout_buttons オブジェクト

PayPal Express Checkout など、オフサイト決済に対応した外部決済プロバイダーがストアに設定されているかを真偽値で返す。`content_for_additional_checkout_buttons` と組み合わせて、該当するチェックアウトボタンを条件付きで表示する。

📁 theme-liquid-docs·MIT·27
📘 公式リファレンス📦 リファレンス/オブジェクト初級

canonical_url オブジェクト

現在のページの正規 URL を取得するオブジェクト。Google などの検索エンジンに対してどのページ版が正規であるかを指定するために使用する。

📁 theme-liquid-docs·MIT·27
📘 公式リファレンス📦 リファレンス/オブジェクト初級

content_for_index オブジェクト

ホームページに表示するセクションの内容を動的に返すオブジェクト。Liquid インデックステンプレートで必ず使用する。

📁 theme-liquid-docs·MIT·27
📘 公式リファレンス📦 リファレンス/オブジェクト初級

content_for_additional_checkout_buttons オブジェクト

PayPal、Apple Pay、Google Pay など複数の決済プロバイダが有効になっているとき、その決済ボタンを HTML として出力するオブジェクト。`additional_checkout_buttons` で有無を判定したうえで、このオブジェクトで実際のボタンを表示する。

📁 theme-liquid-docs·MIT·27