【Shopify Liquid】文字列を改行で区切って配列を作る(split)

▼毎日をちょっと楽しく過ごす

shopifyのセクションを作成する際に、テキストエリアで改行を入れた文字列を、selectにしたいときがありました。

splitを使って改行コードを入れたりしてみたのですが、うまくいかず、以下の方法をネットで見つけました。

文字列を改行で区切って配列を作るコード

 {%- assign select_items = section.settings.textarea | strip | newline_to_br | strip_newlines | split: "<br />" -%}
 
 <select>
    {%- for text in select_items -%}
    <option>{{ text }}</option>
    {%- endfor -%}
 </select>

strip → 文字列の左右から空白を取り除く

newline_to_br → 文字列内の改行コード(\n)をを<br>に変換

strip_newlines → 文字列から全ての改行文字を取り除く

split → 指定した区切り記号で文字列を配列に分割

改行コードを<br>に変換して、それを元に配列にするということのようです。

splitでは直接改行コード(\n)で区切れないため、このような手順になっています。

参考:https://stackoverflow.com/questions/27694610/how-can-i-split-a-string-by-newline-in-shopify

この記事はあなたの役に立ちましたか?