LoginSignup
0
1

More than 5 years have passed since last update.

[Drupal7]複数のタグで検索可能なフォームを設置する

Last updated at Posted at 2017-10-24

実装したい機能

・タクソノミーのタームをチェック項目として配置し、複数のタグ検索が可能
・ヘッダーにフォームを設置し、サイト内全てのページから検索が可能

Viewsでページを作成する

1) + Add new view
2) View name [Taxonomy Sort] -> Create a page : on / Create a block : off -> Continue & edit
3) フォーマット、FIELDSはお好みで設定
4) FILTER CRITERIA -> Add 検索に利用したいタクソノミーのフィールドを選択
image.png

5) Expose this filter to visitors, to allow them to change it にチェック
6) Filter type to expose -> Grouped filters
7) ターム名をラベルにしてVALUEで同じものを選択
image.png

ブロックでフォームを独立して表示する

1) 先ほど作成したViewsの設定
EXPOSED FORM -> Exposed form in block を「はい」に
Exposed form style -> 基本 リセットボタンの表示などここで設定
OTHER -> Machine Name 名前をつける(ここでは[taxsort])
2) Blockモジュールの設定
先ほど保存したViewsが[Exposed form: sort-taxsort]として表示されるので、表示させたいブロックを選択

Grouped filtersチェック時にAllow multiple selectionsを選択するとラジオボタンにならない

Views -> Configure filter criterion
Filter type to expose : Grouped filtersを選択
Allow multiple selectionsを選択
....ウィジェットタイプをRadiosにしてもセレクトタイプで表示されるよ!の問題解決

/modules/views/handlers/views_handler_filter.inc LINE748

$form[$value]['#type'] = 'select';
を以下に変更
$form[$value]['#type'] = 'checkboxes';

※参考
https://drupal.stackexchange.com/questions/84617/views-grouped-filters-turns-radiobuttons-into-select

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1