要件を満たすアプリは分からないですが、テーマを編集すれば要件を満たせると思います。
方法は、商品1、2、3が属するコレクションを作成し、商品ページでコレクションに含まれる商品をselectで表示します。
選択肢A、B、Cは商品のメタフィールドとして登録します。使用したアプリは『Metafields Guru』です。
最初に商品にメタフィールドを設定します。
次にコレクションを作成します。
使用するコードの完成形は以下になります。
{% assign is_products = false %}
{% for collection in product.collections %}
{% if collection.handle == "products" %}
{% assign is_products = true %}
{% endif %}
{% endfor %}
{% if is_products %}
{% assign is_id = product.id %}
{% assign collection = collections['products'] %}
{% endif %}
テストで使用したテーマはdebutです、コード的にどのテーマでも問題ないと思います。
コードは商品ページ(product-template.liquid)の表示したい場所に貼り付けてください。
以下はコードの説明です。
コレクションのハンドル名は『products』にしています。
{% assign is_products = false %}
{% for collection in product.collections %}
{% if collection.handle == "products" %}
{% assign is_products = true %}
{% endif %}
{% endfor %}
最初のforは、商品1、2、3以外にも商品がある場合その商品ページではプルダウンメニューを表示をしないための判定です。商品自体にproductsコレクションが含まれているか判定しています。
{% if is_products %}
{% assign is_id = product.id %}
{% assign collection = collections['products'] %}
{% endif %}
変数is_idは、商品1だった場合選択肢Aを選ばれたときにはページ移動をしないという要件を満たすために開いている商品ページの商品IDを控えています。
あとはselect内でコレクションのループを回して、表示中の商品か否かを判断して移動先をoptionのvalueに入れています。
S_F_さんのしたいことか分かりませんが、よければ使ってください。


