11
Help us understand the problem. What are the problem?

posted at

updated at

Organization

【Shopify】liquidのオブジェクトについてまとめてみた (discount_allocation, discount_application, external_video)

はじめに

この記事では、Liquidオブジェクトについて日本語訳したものです。

discount_allocationdiscount_applicationexternal_videoのオブジェクトをまとめていきます。

こちらを参考にしました。

discount_allocationオブジェクト

discount_allocationオブジェクトの概要についてドキュメントからの引用です。

discout_allocationには、どのように商品価格が割引されるのかに関するすべての情報が含まれています。
このオブジェクトは、顧客注文(customers/order.liquid)テンプレートや通知(notification)テンプレートからアクセスする事ができます。
※Shopify Plusのマーチャントは、checkout.liquidレイアウトファイル内のdescount_allocationオブジェクトのプロパティにアクセスすることができます。

discount_allocationの属性について見ていきます。

discount_allocation.amount

特定の割引による商品の割引額を返します。

discount_allocation.discount_application

ラインアイテム(カートに追加された商品)の割引情報を返します。

discount_applicationオブジェクト

discount_applicationオブジェクトの概要についてドキュメントからの引用です。

discount_applicationは、注文に適用された割引の情報を返します。
このオブジェクトは、顧客注文(customers/order.liquid)テンプレートや通知(notification)テンプレートからアクセスする事ができます。

discount_applicationの属性について見ていきます。

discount_application.target_selection

割引対象商品の選択方法を返します。

  • all:全カート商品に割引を適用します。
  • entitled:一部の商品に対して割引を適用します。
  • explicit:特定の商品か配送方法に対して割引を適用します。

discount_application.target_type

割引を適用する商品の種類を指定します。

以下の値を指定することが出来ます。

  • line_item:カート内の商品
  • shipping_line:配送が必要な商品

discount_application.title

顧客に表示する割引名です。

例えば、Welcome10CBBWQQAKYBYYなどです。

discount_application.total_allocated_amount

割引金額の合計を返します。

discount_application.type

割引の種類を返します。

typeには、以下の値があります。

  • automatic
  • discount_code
  • manual
  • script

discount_application.value

割引の値を返します。

discount_application.value_type

割引のタイプ(固定値、割合)を返します。

以下のタイプがあります。

  • fixed_amount(固定値)
  • percentage(割合)

external_videoオブジェクト

external_videoオブジェクトの概要についてドキュメントからの引用です。

商品に関連付けられたYouTube動画に関する情報を返します。
external_videoオブジェクトは、productオブジェクトのmedia属性からアクセスすることが出来ます。

external_videoオブジェクトの属性を見ていきます。

external_video.alt

Shopify管理画面の商品詳細ページに設定されている動画のaltタグを返します。

external_video.aspect_ratio

YouTube動画のアスペクト比を返します。

external_video.external_id

YouTube動画のIDを返します。

{% assign external_videos = product.media | where: "media_type", "external_video" %}

{% for external_video in external_videos %}
  {{ external_video.external_id }}
{% endfor %}

neFK-pv2sKY
JthaEfEsLYg

external_video.host

動画のホスト(youtube等)の名前を返します。

external_video.id

外部動画のmedia_idを返します。

external_video.media_type

external_videoオブジェクトの型を返します。

productオブジェクトの media 配列をフィルタリングするために使用されます。

{% assign external_videos = product.media | where: "media_type", "external_video" %}

{% for external_video in external_videos %}
  {{external_video.external_id}}
{% endfor %}

neFK-pv2sKY
JthaEfEsLYg

external_video.position

productオブジェクトの media 配列内の external_video のインデックス番号を返します。

終わりに

今回の記事はここまでになります。

お疲れさまでした。

Shopify アプリのご紹介

Shopify アプリである、「商品ページ発売予告アプリ | リテリア Coming Soon」は、商品ページを買えない状態のまま、発売日時の予告をすることができるアプリです。Shopify で Coming Soon 機能を実現することができます。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Sign upLogin
11
Help us understand the problem. What are the problem?