2020-04-15

プルダウンの選択方法を変更したりテンプレート管理できるようになる Super Dropdown を試してみた #craftcms

プラグインストアをみていてドリルダウンなかんじでフィールドを選択できる Super Dropdown プラグインというのがあったので試してみた。

Super Dropdown
https://plugins.craftcms.com/s...

フィールドの種類として Super Dropdown を選んで、その選択元のソースを選ぶことができる。

Element はカテゴリやエントリを選ぶことができる。

カテゴリを選ぶようにした場合、こういう構成のカテゴリの場合、

こんな感じで選択できるようになる

通常のカテゴリフィールドとの表示比較。

ためしていないのだけど、エントリもストラクチャだと似たような感じでドリルダウンで選ぶことができそう。

試してみたのはチャンネルなのであまり面白みがない。

ドロップダウンの選択肢の管理をテンプレートベースで行う

通常のカテゴリとは違うのは事前に用意したJSONをつかったり、Twigテンプレートで出力される値を元に選択肢をカスタマイズすることができる。

サンプルとして入っているものを試してみる。

JSONのサンプル

選択部分

見た目に違いがあまりないのでわかりにくい。。。

Twig を用意しておいて、 JSON を返すようにしておくのでもいけるらしい。

{% set dropdowns = [
    {
      "name": "location",
      "type": "primary",
      "options": [
      {
        "label": "North Campus",
        "value": "north-campus",
        "subselect": "north-campus"
      },

〜〜〜 略 〜〜〜

{{ dropdowns | json_encode() | raw }}

"subselect": "quad-floor" のような感じでぶら下げていくことができる。

ドロップダウンはフィールドの設定で縦に並ぶようにもできる。


条件分岐するようなフィールドを作ったりすることもあるけど、シンプルな値だけでやるような場合にはこういう場合もありそう。