様々な開発言語や環境、用途に応じた実際に動作するアプリやテーマのサンプルコードを、公式、非公式問わず集める場所です。自分のコードをもとにした質問をしたり、希望を書くだけでも構いません。
解決済! ベストソリューションを見る。
成功
@Kou231 様
> 下記のコードで「pink」というコレクションのすべてのタグを取得したいのですが、
コレクション「pink」に所属している商品に付けられているタグを全て取得したい、
ということで合っているでしょうか?
もし、合っているようでしたら、
ご記載いただいた
{{collections['pink'].tags}}
で取得できると思うのですが、
それにも関わらず、質問されているということは、
下記いずれかということでしょうか?
もし、1でしたら、どういった情報を取得されたいか改めてお教えいただければ幸いです。
もし、2でしたら、Dawnをお使いであれば、下記のコードを「セクション > main-list-collections.liquid」の良き場所に挿入いただけば、xxxxx.myshopify.com/collections にアクセスした際、コレクションのタイトルと、そのハンドルの組み合わせが表示されますので、目的のハンドルをお探しください。
<ul>
{% for collection in collections%}
<li>{{ collection.title }}:{{ collection.handle }}</li>
{% endfor %}
</ul>
もし、3でしたら、コレクション「pink」に所属する全商品に設定されているタグをご確認いただくと何かわかるかもしれません。
ご参考まで。
(キュー田辺)
成功
@Kou231 様
> 下記のコードで「pink」というコレクションのすべてのタグを取得したいのですが、
コレクション「pink」に所属している商品に付けられているタグを全て取得したい、
ということで合っているでしょうか?
もし、合っているようでしたら、
ご記載いただいた
{{collections['pink'].tags}}
で取得できると思うのですが、
それにも関わらず、質問されているということは、
下記いずれかということでしょうか?
もし、1でしたら、どういった情報を取得されたいか改めてお教えいただければ幸いです。
もし、2でしたら、Dawnをお使いであれば、下記のコードを「セクション > main-list-collections.liquid」の良き場所に挿入いただけば、xxxxx.myshopify.com/collections にアクセスした際、コレクションのタイトルと、そのハンドルの組み合わせが表示されますので、目的のハンドルをお探しください。
<ul>
{% for collection in collections%}
<li>{{ collection.title }}:{{ collection.handle }}</li>
{% endfor %}
</ul>
もし、3でしたら、コレクション「pink」に所属する全商品に設定されているタグをご確認いただくと何かわかるかもしれません。
ご参考まで。
(キュー田辺)
@Kou231 様
記載いただいている内容からの推測になりますが、
下記の理解で合っているでしょうか?
上記合っているようでしたら、
下記の投稿が参考になるかと思います。
https://community.shopify.com/c/technical-q-a/collection-rules/m-p/1815018
https://community.shopify.com/c/technical-q-a/collection-rules/m-p/1815018/highlight/true#M110527
おそらく、
collection.rules
を取得されたいのだと思いますが、
どうやらそれはできないらしいので、
質問者様が実装されたように、jsonをパースしていくしかなさそうです。
簡単になるかは分かりませんが、
上記の投稿の1つを参考にして、
自動コレクションの条件がタグの場合に、
そのタグの内容を配列にして返す処理を書いてみました。
{% liquid
assign rules = collection | json | split: ',"rules":' | last | split: ']' | first | append: ']' | split: ",{"
assign rule_tags = ""
for rule in rules
if rule contains '"column":"tag"'
assign tag = rule | split: '"condition":"' | last | split: '"' | first
assign rule_tags = rule_tags | append: tag | append: ','
endif
endfor
assign rule_tags = rule_tags | remove_last: "," | split: ","
%}
rules_tagsという変数に、自動コレクションの条件に使用したタグが配列で格納されます。
ご参考まで。
(キュー田辺)