shopify liquidで文字列をsplitして配列にする方法!

shopifyのliquid内で配列を扱うには癖があることを知りました。

shopifyでは文字列を作成してからsplitを使って配列化する

shopifyでははじめから[] などを使って配列を変数に代入したりできないようなので、split(分ける)を使って文字を分ける必要があるようです。

splitの仕方

splitの書き方をみていきます。

{% comment %} 文字列を作成 {% endcomment %}
{% assign arr_str = "1,2,3,4,5" %}
{% comment %} 文字列をsplitで分割 {% endcomment %}
{% assign arr = arr_str | split : "," %}

assign arr_strに代入された文字列を、splitを使って分割して配列構造にしています。

splitした配列の呼び出し方

配列にした後の呼び出し方法や、実際によく使われる方法を見ていきます。

配列をインデックス番号で呼び出し

{% comment %} 文字列を作成 {% endcomment %}
{% assign arr_str = "1,2,3,4,5" %}
{% comment %} 文字列をsplitで分割 {% endcomment %}
{% assign arr = arr_str | split : "," %}

{% comment %}配列の中身をインデックス番号を指定して表示 {% endcomment %}
<p>{{ arr[0] }}</p>
<p>{{ arr[3] }}</p>
{% comment %}配列の中身を配列で表示 {% endcomment %}

配列の中身をfor文で呼び出し

{% comment %} 文字列を作成 {% endcomment %}
{% assign arr_str = "1,2,3,4,5" %}
{% comment %} 文字列をsplitで分割 {% endcomment %}
{% assign arr = arr_str | split : "," %}
<ul>
{% for num in arr %}
<li>{{ num }}</li>
{% endfor %}
</ul>

おわり

覚えられればさくさくコーディングできそうですね。覚えれば。。

shopify

Posted by Nakamoto