Shopify Flowを用いて、同じ商品を2回購入してくれた顧客にアクションをする方法

@Anonymous_876e90207c84eec074dc8f1fbdf1c908

codeの解説、でよかったでしょうか?

codeにコメントを入れてみました。

export default function main(input) {

  // 同じ商品を2回購入しているかのフラグ
  let isSecondPurchase = false;

  // 注文のlineItemsからproduct.handleを取り出して、配列に変換。["handle1","handle2","handle3"]のような配列が出来上がる
  const handles = input.order.lineItems.map(lineItem => lineItem.product.handle);

  // handelsの要素1つずつ(注文があった商品のハンドル)が顧客タグに含まれるかを調査
  handles.forEach(handle => {
    // まだ、同じ商品を2回購入していることが確認できていない場合
    if(!isSecondPurchase) {
      // 顧客タグに、商品ハンドルが含まれていれば、同じ商品を2回購入しているかのフラグをtrueに、そうでなければ、falseにする
      isSecondPurchase = input.order.customer.tags.includes(handle);
    }
  })

  // outputに渡す値
  return {
    isSecondPurchase: isSecondPurchase
  }
}

ご参考まで。

(キュー田辺)

1 Like