SharePoint 2013 検索の絞り込みパネルに結果件数を追加してみた

Display Template
スポンサーリンク

SharePoint 2013 では、検索機能についても大幅に機能が強化され、SharePoint の利用シナリオでも検索を活用するシーンがますます増えていくものと考えています。SharePoint 2010 から検索結果ページの左側に追加された「絞り込みパネル」で、比較的メジャーなカスタマイズであった「結果件数表示」について SharePoint 2013 でも同様のカスタマイズを行う方法について検証・確認を行いましたので、書いてみたいと思います。

ちなみに、SharePoint 2010 でのカスタマイズ方法については、下記クリエ・イルミネートさんのブログに書かれています。

SharePoint 2010 検索 絞り込みパネル 結果件数表示

検索-絞り込みパネル-結果件数表示/

20130227-1


まず「絞り込みパネル」というのは、検索結果の左側に表示されているナビゲーションです。こちらを利用することで、検索結果に対して様々な条件に応じたフィルターを掛けることが出来るというものです。

今回紹介するカスタマイズは、「基本検索センター」等の検索用のサイトコレクション テンプレートを利用している場合のカスタマイズ方法となります。また、このカスタマイズには、SharePoint 2013 から新たに登場した「デザイン マネージャー」を少しだけ利用します。

20130227-2
20130227-3

それでは、検索サイトを開き「デザイン マネージャー」を見てみます。

左側のメニューに「5. 表示テンプレートの編集」というメニューがあると思いますので、そちらをクリックすると登録されている「表示テンプレート」が確認できます。表示テンプレートの一覧に「絞り込みアイテム(Filter_Default)」というテンプレートを見つけることができると思いますので、右クリック等でダウンロードしておきます。(ファイル名は「Filter_Default.html」です。)今回のカスタマイズでは、このファイルをベースとして進めていきます。

「Filter_Default.html」をテキスト エディタで開き、変更を加えるわけですが、変更すべき箇所はたったの2か所だけです。

  1. 3行目付近の<title>タグ
  2. 23行目付近のShowCounts: false

<title>タグに関しては、今回は「絞り込みアイテム(数字付き)」としました。ShowCountsについては、falsetrueに変更します。つまり、ShowCounts: trueが「結果件数」を表示するための指定となっています。この編集済みのファイルを保存し、ファイル名を変更しておきます。今回は「Filter_Default_Count.html」としました。

次に、このファイルを「マスター ページ ギャラリー」にアップロードします。「マスター ページ ギャラリー」は「サイトの設定」から「マスター ページとページ レイアウト」と辿ると開くことができます。「マスター ページ ギャラリー」に「Filter_Default_Count.html」をアップロードします。

この場合、おそらく設定を変える必要はないと思いますが、念のため確認する箇所は次の3つです。

  1. 「コンテンツ タイプ」が「フィルター表示テンプレート」になっていること
  2. 「対象コントロールの種類(検索)」で「Refinement」が選択されていること
  3. 「関連付けられているファイル」にチェックが入っていること

アップロードすると、見慣れないファイル「Filter_Default_Count.js」がいつのまにか作成されていることに気が付くと思います。このファイルは「デザイン マネージャー」が自動で作成してくれた「表示テンプレート」です。「デザイン マネージャー」に移動し、「5. 表示テンプレートの編集」から「Filter_Default_Count」に対して「メジャー バージョンの発行」をします。

20130227-4
20130227-5
20130227-6

ここまできたら、もう一息です。検索の結果画面に移動し、「ページの編集」を行い、左側の「絞り込み」で「Web パーツの編集」を行います。Web パーツの編集メニューから「絞り込み条件の選択…」をクリックします。

画像のようなポップアップが表示されるので、「表示テンプレート」を「絞り込みアイテム(数字付き)」へ変更します。さらに、ここが重要(気が付かずに悩みました…)なのですが、この設定を「選択した絞り込み条件」に表示されている「結果件数」を表示したい全ての条件に対して行います。既定では、「LastModifiedTime」だけが特殊なテンプレートを使用しているため、それ”以外”は変更しても構わないと思います。

ポップアップを「OK」で閉じ、Web パーツの編集メニューも「OK」で閉じた後にページを保存すると…

お疲れ様でした!!「絞り込みパネル」に「結果件数」が表示されました!!

タイトルとURLをコピーしました