Shopifyでタグ内の数値を取り出し大小を判定して別の配列を作る

ちょっと特殊な用途でコードを作ったもののお蔵入りになったのでメモとして。

実現したいこと

  • Shopifyで特定の記述ルールを使ってサイズを記載したタグを使う(他に通常のタグもある)
  • 「サイズを使ったタグのみの配列」とサイズを大中小に分けたタグを作る

ちょっとわかりにくいと思いますが、作った本人も当てがはずれた状態のため用途不明に近く具体例が出せません…。

サンプルコード


{% comment %}
タグを"size-2"や"size-20"のように、"size-"を接頭語として数値を記載する前提。
{% endcomment %}

{% assign array_all = '' %}
{% assign array_l = '' %}
{% assign array_m = '' %}
{% assign array_s = '' %}
{% for tag in blog.tags %}
  {% if tag contains 'size-' %}
    {% assign array_all = array_all | append: "," | append: tag %}
    {% assign tagNum = tag | remove: 'size-' | plus: 0 %}
    {% if tagNum > 20 %}
      {% assign array_l = array_l | append: "," | append: tag %}
    {% elsif tagNum >= 10 and tagNum <= 20 %}
      {% assign array_m = array_m | append: "," | append: tag %}
    {% else %}
      {% assign array_s = array_s | append: "," | append: tag %}
    {% endif %}
  {% endif %}
{% endfor %}

{% assign array_all = array_all | remove_first: "," | split: ","%}
{% assign array_l = array_l | remove_first: "," | split: ","%}
{% assign array_m = array_m | remove_first: "," | split: ","%}
{% assign array_s = array_s | remove_first: "," | split: ","%}

接頭語を使えば特定の用途に用いる要素としてタグが使えます。この時に数字を使っていればそれを取り出し、上記のコードのようにplusフィルターを使って大小を判別して別の配列を作ることが可能です。

結び

何かに使えるような、何にも使えなさそうな。

0人がこの記事を評価

役に立ったよという方は上の「記事を評価する」ボタンをクリックしてもらえると嬉しいです。

連投防止のためにCookie使用。SNSへの投稿など他サービスとの連動は一切ありません。

コメント欄