category

Craft CMS で特定のフィールドの選択肢を取り出してフォームなどに使う #craftcms

2019-08-27

管理画面側は簡単にフィールドをつくって選択肢を増やしていけますが、それを検索やフォームといったときに選択肢として使う方法をどうやるんだろう?ということで調べてみた。

例えばこういうセレクトボックス用のフィールド。

こういう感じの選択肢として表側で使いたい場合。

セクションのエントリとかを取るのはわかるけどどうやるんだろうな?ということで調べてみて。

チェックボックスのフィールドのことですが

Checkboxes Fields | Craft 3 Documentation
https://docs.craftcms.com/v3/c...

ここに書かれてる感じで

<select class="c-keyword-search__control-select" name="fields[bookSize]">
<option value="">すべて</option>
{% set searchSize = craft.app.fields.getFieldByHandle('bookSize') %}
{% for option in searchSize.options %}
<option value="{{ option.value }}">{{ option.label }}</option>
{% endfor %}
</select>

こんな感じでフィールドのハンドル bookSize を指定して取得したものを searchSize.options でループして回せば良さそう。

なるほどなるほど、勉強になった。