特定タグを持った顧客のみコレクションへアクセス許可

AI-generated summary

目的: アプリ不使用で、特定タグを持つ顧客のみコレクションページへアクセス可能にし、該当商品の検索表示も制御したい。

経緯: コレクション用に新規 collection.liquid を作成しコード追記したが、制限が機能せず。コードの誤りや配置場所の妥当性、さらに product.liquid でも同様の制御が必要かを質問。

提案: Liquid でのログイン・タグ判定を提示。

  • 未ログインなら /account/login へリダイレクト(customer が存在しない場合)。
  • customer.tags に指定タグが含まれるか判定し、なければトップページ(/)へリダイレクト。
  • タグ保持者のみページ内容を表示。
    (customer.tags は顧客に付与されたタグでの判定に用いる)

結果: 質問者は提案を採用予定と回答し、感謝を表明。実装成否の報告はなく、検索結果からの非表示や product.liquid 側の具体的実装方法については追加の技術的詳細・最終結論は未提示。

現状: 解決に向けた方向性は共有されたが、検索制御などの残課題は未解決でディスカッション継続の余地あり。

こんにちは。

現在管理していますECサイトで特定のタグを持ったお客様のみ

アクセスできるコレクションページを作成したいと考えています。

残念ながら社内決済が下りず、

Locksmithなどの便利なアプリケーションが使えず、

またエキスパートにも依頼が出来ませんので、

担当者でコード編集が必要です。

インターネットで調べたところ以下のようなコードを見つけ、新しく作った collection.liquidに追記しましたが、アクセス制限するに至っておりません。

以下コード上のエラー、またはコード記述場所にエラーはありますでしょうか?

またコレクション内の商品が検索によって表示されないように、コレクション同様にタグ所持お客様にのみ表示される処理をしなけれなりません。

その場合は、以下のようなコードを新しく製作したproduct.liquidに記述の上、該当商品に反映させるという認識で間違いないでしょうか?

皆さんのお知恵を貸していただければ幸いです。 よろしくお願いいたします。


{% comment %}
The contents of the collection.liquid template can be found in /sections/collection-template.liquid
{% endcomment %}

{% section 'collection-template' %}

OSHIKA 様

はじめまして。

株式会社フルバランスのドウケと申します。

ログイン判定・タグ判定については以下のようにされるのはいかがでしょうか。

ご質問から期間が空いてしまいましたが、ご参考になれば幸いです。

{% unless customer %}
  window.location.href('/account/login') // ログインしていないとき、ログインページへリダイレクト
{% endunless }

{% assign customerTags = customer.tags %}
{% if customerTags contains "タグ名" %}
  // タグ持ちのお客様への処理
{% else %}
  window.location.href('/') // タグを持っていないとき、トップページへリダイレクト
{% endif %}

株式会社フルバランスのドウケ様

この度はShopify Community上での私の質問へのご回答ありがとうございました。
いただきました、ご回答をもとにコレクションへのアクセス制限設定をおこなってみます。
今後何かありましたら、株式会社フルバランスのドウケにコンタクトさせていただきます。

本当にありがとうございました。

OSHIKA