# 非会員の購入ボタンを非表示にする

**URL:** <https://community.shopify.com/t/topic/35305>\
**Category:** 総合的なディスカッション\
**Created:** [February 9, 2021, 3:43am UTC](https://community.shopify.com/t/topic/35305 "2021-02-09T03:43:08Z")\
**Posts on this page:** 5\
**Page:** 1

## AI-generated summary

Shopifyで、非会員・無料会員・有料会員の3区分があるサイトにおいて、非会員が有料会員向け商品をカートに入れたまま会員登録すると、そのまま購入できてしまう問題が相談された。Easy Lockdownアプリでは「非会員向けの購入ボタン非表示」が難しく、テーマ側での制御方法が求められていた。

対応案として、Liquidの`customer`オブジェクトを使い、`{% if customer %}`で購入ボタンを囲む方法が提示された。これにより、未ログインの非会員には購入ボタンが表示されなくなり、当初の課題には対応できたと報告されている。

その後、特定商品のみ購入ボタンを非表示にする方法も話題になった。一般論としての断定は避けつつ、商品タグで制御する方法がシンプルとの意見が示され、`contains`による分岐も紹介された。商品名に特定文言を含めて判定する代替案も出たが、やや変則的とされている。

結論として、非会員へのボタン非表示は解決済み。特定商品単位の制御は、タグ運用を軸に実装できそうという段階で収束している。

<div class="post-metadata">

**Author:** ![COCOIN](https://avatars.discourse-cdn.com/v4/letter/c/e56c9b/32.png) [@COCOIN](https://community.shopify.com/u/COCOIN)\
**Post date:** [February 9, 2021, 3:43am UTC](https://community.shopify.com/t/topic/35305/1 "2021-02-09T03:43:08Z")

</div>

こんにちは。shopifyで現在、非会員・無料会員・有料会員の3ステータスがあるサイトを構築しています。

現在、無料会員と有料会員をタグ付けで区別し、easy lock downアプリで有料会員向けコンテンツ、商品販売を管理しています。

(無料会員タグがついてる顧客には、購入ボタンを表示しない)

ですが、easy lock downの仕様上非会員向けの購入ボタン非表示ができず下記の状況に対応するため何かしら制御が必要と考えています。

〈状況〉

非会員がカートに追加→会員登録ページに遷移→会員登録完了となるとカート内に商品が残っているため有料会員向け商品を購入できてしまう。

もし、easy lock downもしくは shopifyテーマなどで解決方法をご存知の方がいましたらご教示いただけますと幸いです。

よろしくお願いいたします。

---

<div class="post-metadata">

**Author:** ![Jizo\_Inagaki](https://yyz1.discourse-cdn.com/shopifyforum/user_avatar/community.shopify.com/jizo_inagaki/32/149480_2.png) [@Jizo\_Inagaki](https://community.shopify.com/u/Jizo_Inagaki)\
**Post date:** [February 9, 2021, 6:02am UTC](https://community.shopify.com/t/topic/35305/2 "2021-02-09T06:02:46Z")

</div>

状況があまり理解できていませんが、非会員(=登録をしていないユーザー?)に購入ボタンを表示したくないということであれば、以下のようなifで購入ボタンを囲むとボタンは出力されなくなるとは思います。

[https://shopify.dev/docs/themes/liquid/reference/objects/customer](https://shopify.dev/docs/themes/liquid/reference/objects/customer)

```markup
{% if customer %}
  Customer is logged in. You can access the customer
  attributes such as {{ customer.first_name }}.
{% endif %}

```

---

<div class="post-metadata">

**Author:** ![COCOIN](https://avatars.discourse-cdn.com/v4/letter/c/e56c9b/32.png) [@COCOIN](https://community.shopify.com/u/COCOIN)\
**Post date:** [February 10, 2021, 7:52am UTC](https://community.shopify.com/t/topic/35305/3 "2021-02-10T07:52:10Z")

</div>

@Jizo_Inagaki 様

ありがとうございます。こちらの方でコード記載したところ、非会員(jizo様のおっしゃっていた登録をしていないユーザで認識あっています)が購入ボタン見れなくなりました。

ちなみに、最初のトピックからはズレるのですが特定商品のみ購入ボタンを消すという処理を加える場合、どの項目で制御するのが一般的かの知見等ありましたらご教示いただけますと幸いです。

(プロダクトごとにタグ付け("ボタン非表示"等),ボタン非表示コレクションで分岐などが管理上良いのではないかと考えております)

---

<div class="post-metadata">

**Author:** ![Jizo\_Inagaki](https://yyz1.discourse-cdn.com/shopifyforum/user_avatar/community.shopify.com/jizo_inagaki/32/149480_2.png) [@Jizo\_Inagaki](https://community.shopify.com/u/Jizo_Inagaki)\
**Post date:** [February 10, 2021, 9:12am UTC](https://community.shopify.com/t/topic/35305/4 "2021-02-10T09:12:06Z")

</div>

申し訳ありませんが、一般的という視点での判断ができるほどShopifyに触れているわけではないのでご返答できかねる状態です。

そのため別視点からにはなりますが、シンプルなのはタグの使用だとは思います。

蛇足になりますが管理画面から非表示切り替え可能な他の方法としまして、変則的でお勧めできるものではありせんが、以下のような方法も一応は考えられます。

- 商品名のどこかに特定の言葉をつけ、それを手がかりに分岐させる(例:[販売直前商品]とつける)

対象となる値さえ取れればあとはcontainsで分岐を作れますので。

[https://shopify.dev/docs/themes/liquid/reference/basics/operators#contains](https://shopify.dev/docs/themes/liquid/reference/basics/operators#contains)

---

<div class="post-metadata">

**Author:** ![COCOIN](https://avatars.discourse-cdn.com/v4/letter/c/e56c9b/32.png) [@COCOIN](https://community.shopify.com/u/COCOIN)\
**Post date:** [February 12, 2021, 8:18am UTC](https://community.shopify.com/t/topic/35305/5 "2021-02-12T08:18:45Z")

</div>

@Jizo_Inagaki ご回答ありがとうございます。こちらの方法でイメージしている構築ができそうです！ありがとうございました。
