FROM CACHE - jp_header

「全ての商品(/collections/all)」で条件に応じて商品を出し分ける方法

解決済
Yamamon
Shopify Partner
2 0 0

現在テーマ開発を行っております。

 

・やりたいこと

Customerにつけているタグと同じタグを持ったProductのみを/collections/all で表示させたい

 

(例)

グループAとグループBがあり、Customerはアカウント作成時にどちらかに属し、タグが付与される。

Productも登録時に、どちらのグループに向けた商品かを判別すべくタグを付与する。

グループAのタグが付いたProductはグループAのタグが付いたCustomerにしか表示されない。

グループBについても同様。

 

・現状

EasyLockdownというアプリでアクセス制限をかけて商品の詳細は閲覧できない状態にはなりました。

このアプリには下記画像のような設定項目があります。

スクリーンショット 2022-01-27 0.52.58.png

「ロックの掛かったものを検索やコレクションに表示させるかどうか」という項目です。

現在は画像の通りチェックをいれても表示されてしまいます。

 

・知りたいこと

そもそも「collection.products」を条件に応じてproductの出し分けが可能なのか。

似たようなものを再現する際のベストプラクティスがあれば。

 

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

1 件の受理された解決策

ベストソリューション
株式会社フルバランス
Shopify Partner
317 91 305

成功

>そもそも「collection.products」を条件に応じてproductの出し分けが可能なのか。

はい、下記は一例ですが、collectionページにてお客様に付与されたタグと商品に登録されたタグを一致させるなどの方法で商品の出しわけは可能です。

 

コード例:

{% for tag in customer.tags %}
 {% if tag contains "product__" %}
  {% assign customerTag = tag | split: "product__" | last %}
 {% endif %}
{% endfor %}

 

{% for product in collection.products %}

 {% if product.tags contains customerTag %}

  商品を表示

 {% endif %}

{% endfor %}

 

こちらで商品の出しわけ自体は可能ですが、検索に引っかからないようにする、商品の詳細ページを閲覧できないようにする、などの処理が必要な場合は、頂いているようなアプリを利用する形が良いと思います。

株式会社フルバランス(Shopify Experts)
東京・高田馬場 18期目のWebデザイン・システム制作会社です。Shopify / Shopify Plusの制作・運営をサポートしております。
https://fbl.jp/

元の投稿で解決策を見る

2件の返信2
株式会社フルバランス
Shopify Partner
317 91 305

成功

>そもそも「collection.products」を条件に応じてproductの出し分けが可能なのか。

はい、下記は一例ですが、collectionページにてお客様に付与されたタグと商品に登録されたタグを一致させるなどの方法で商品の出しわけは可能です。

 

コード例:

{% for tag in customer.tags %}
 {% if tag contains "product__" %}
  {% assign customerTag = tag | split: "product__" | last %}
 {% endif %}
{% endfor %}

 

{% for product in collection.products %}

 {% if product.tags contains customerTag %}

  商品を表示

 {% endif %}

{% endfor %}

 

こちらで商品の出しわけ自体は可能ですが、検索に引っかからないようにする、商品の詳細ページを閲覧できないようにする、などの処理が必要な場合は、頂いているようなアプリを利用する形が良いと思います。

株式会社フルバランス(Shopify Experts)
東京・高田馬場 18期目のWebデザイン・システム制作会社です。Shopify / Shopify Plusの制作・運営をサポートしております。
https://fbl.jp/
Yamamon
Shopify Partner
2 0 0

ご返信ありがとうございます。

内容を確認させていただきました。

 

コード例までありがとうございます。

customer.tagsから該当のtagを抽出し、product.tags contains で商品の出し分けをしていることは理解できました。

 

その他の方のご意見等があればそちらも拝見した後、ベストソリューションとさせていただければと思います。