概要

設定方法


Value欄に挿入するコード例)
過去の使用実績に関わらず使用されたコードを追加していく場合
{% liquid
assign existing_codes = ''
for metafields_item in order.customer.metafields
if metafields_item.key == 'used_coupon_code'
assign existing_codes = metafields_item.value | replace: '[', '' | replace: ']', '' | split: ','
endif
endfor
assign additional_codes = ''
for discountCodes_item in order.discountCodes
assign additional_codes = additional_codes | append: ',' | append: '"' | append: discountCodes_item | append: '"'
endfor
assign additional_codes = additional_codes | remove_first: ','
%}
[{% unless existing_codes == '' %}{{ existing_codes | join: "," }},{% endunless %}{{ additional_codes }}]
過去に使用したことがあるディスカウントコードは追加しない場合
{% liquid
assign existing_codes = ''
for metafields_item in order.customer.metafields
if metafields_item.key == 'used_coupon_code'
assign existing_codes = metafields_item.value | replace: '[', '' | replace: ']', '' | split: ','
endif
endfor
assign additional_codes = ''
for discountCodes_item in order.discountCodes
assign able_to_add = true
for existing_code in existing_codes
assign existing_code_without_double_quote = existing_code | replace: '"', ''
if existing_code_without_double_quote == discountCodes_item
assign able_to_add = false
endif
endfor
if able_to_add
assign additional_codes = additional_codes | append: ',' | append: '"' | append: discountCodes_item | append: '"'
endif
endfor
unless additional_codes == ''
assign additional_codes = additional_codes | remove_first: ','
endunless
%}
[
{%- unless existing_codes == '' -%}{{ existing_codes | join: "," }}{%- endunless -%}
{%- unless existing_codes == '' or additional_codes == '' -%},{%- endunless -%}
{%- unless additional_codes == '' -%}{{ additional_codes }}{%- endunless -%}
]