初回限定品を1個限定販売したい

Topic summary

課題: 初回限定商品を1ユーザーにつき1個のみ販売する設定方法を探している。テーマはDawn。

提案された解決策:

  1. アプリ対応: 該当するアプリは見つかっていない

  2. Liquidとコード編集による実装: 2名の回答者が技術的な実装方法を提案

    • ログイン必須の前提
    • 商品に「限定商品」タグを付与
    • 購入済みユーザーに「限定商品購入」タグを自動付与(Shopify Flow使用)
    • 商品ページとカートページでJavaScript/Liquidコードを追加し、購入済みユーザーには購入ボタンを非表示にする

技術レベル: やや高度な実装が必要。サンプルコードが提供されたが、追加調整が必要。

結果: 質問者は提案に感謝し、参考にする意向を示したが、現在のスキルレベルでは編集が難しいと認識。スレッドは解決方法の提示で終了し、実装は未確定。

Summarized with AI on November 14. AI used: claude-sonnet-4-5-20250929.

テーマ:Dawn
初回限定商品を販売します。
1ユーザーにつき初回1回限り、1個限定で販売したいと考えていますが、設定方法が見つからず悩んでいます。

①もし対応しているアプリがありましたら、教えてください。

②リキッド編集で可能であれば、詳細を教えていただけますと大変有難いです…。

(HTML,CSSは問題ないですがリキッドは初心者です)

※アプリについては自分でも調べたのですが、カートごとではなくユーザーごとに回数・数量限定できるものは見つけることができませんでした。複数アプリの組合せでもよいので、ご提案いただけると助かります。

※購入時にログイン必須設定にしています。また初回限定商品にはタグをつけています。

@resonate

①のアプリは探せばあるかと思いますが②のリキッド編集で対応可能ですので、②の考え方を記載させていただきます。

今回ご提示させていただく方法は、ログインしていないと初回限定商品は購入できません。

  1. 商品テンプレート(liquid)を編集
    ・初回限定のタグがついている商品の場合、数量セレクターを非表示にする処理を追加
    ・ユーザーが未ログインだったら、『カートに追加ボタン』を非表示にする処理を追加
    ・ユーザーに初回限定商品を買ったことを示すタグがついていたら、『カートに追加ボタン』を非表示にする処理を追加
  2. カートテンプレート(liquid)を編集
    ・初回限定のタグがついている商品の場合、数量セレクターを非表示にする処理を追加
  3. 初回限定商品を購入した際、Shopify Flowやタグをつけるアプリを使用しユーザーに初回限定商品を買ったことを示すタグを付与

ご参考まで
(キュー小坂)

1 Like

はじめまして。
新垣と申します。

こちらの要望、技術的には少しハイレベルなお話になります。

*添付のコードは全てサンプルになり、追加調整が必要になります。

①要望に対応しているアプリは見聞きしたことがなく残念ですが、お力添えできません。

②LiquidおよびJSとShopify Flowを組み合わせることで可能かと思います。

以下、大まかですがステップになります。

Flowでの処理:顧客の限定商品購入有無を判別できるようにする。

  1. 該当商品に特定のタグ(例:“限定商品”)を付与
  2. Flowにて注文作成時のトリガーを選択
  3. 条件にて注文商品内に"限定商品"タグ商品の有無を判別する
  4. "限定商品"タグ商品があった場合、アクションにて顧客に特定のタグ(例:“限定商品購入”)を付与

コード編集での処理:"限定商品購入"タグのある顧客に"限定商品"商品の購入を不可にする

  1. 商品ページに追加
// 商品が'限定商品'タグを持ち、かつ顧客も'限定商品購入'タグも持つ場合
{% if product.tags contains '限定商品' and customer.tags contains '限定商品購入' %}
  
{% endif %}

コード編集での処理:全顧客に対して"限定商品"は1個のみの購入に制限する

  1. カートページに追加
// カート内の限定商品の数量をカウント
{% assign limitedItemCount = 0 %}
{% for item in cart.items %}
  {% if item.product.tags contains '限定商品' %}
    {% assign limitedItemCount = limitedItemCount | plus: item.quantity %}
  {% endif %}
{% endfor %}

以上です。
少々難しい話かもしれませんが、解決への一歩となれば幸いです。

御ストアの益々の発展を祈っております。

1 Like

丁寧に教えてくださり、ありがとうございます!

コードまで記述くださり、心より感謝申し上げます。
Flowから勉強してみます。

1 Like

丁寧に教えてくださり、ありがとうございました!
今の自分のレベルでは編集が難しいことが良くわかりました(笑)
流れだけでもとても参考になりました。