SharePoint 2013 では、検索機能についても大幅に機能が強化され、SharePoint の利用シナリオでも検索を活用するシーンがますます増えていくものと考えています。SharePoint 2010 から検索結果ページの左側に追加された「絞り込みパネル」で、比較的メジャーなカスタマイズであった「結果件数表示」について SharePoint 2013 でも同様のカスタマイズを行う方法について検証・確認を行いましたので、書いてみたいと思います。
ちなみに、SharePoint 2010 でのカスタマイズ方法については、下記クリエ・イルミネートさんのブログに書かれています。
SharePoint 2010 検索 絞り込みパネル 結果件数表示
http://crieilluminate.wordpress.com/2012/09/01/sharepoint-2010-検索-絞り込みパネル-結果件数表示/
まず「絞り込みパネル」というのは、検索結果の左側に表示されているナビゲーションです。こちらを利用することで、検索結果に対して様々な条件に応じたフィルターを掛けることが出来るというものです。
今回紹介するカスタマイズは、「基本検索センター」等の検索用のサイトコレクション テンプレートを利用している場合のカスタマイズ方法となります。また、このカスタマイズには、SharePoint 2013 から新たに登場した「デザイン マネージャー」を少しだけ利用します。
それでは、検索サイトを開き「デザイン マネージャー」を見てみます。
左側のメニューに「5. 表示テンプレートの編集」というメニューがあると思いますので、そちらをクリックすると登録されている「表示テンプレート」が確認できます。表示テンプレートの一覧に「絞り込みアイテム(Filter_Default)」というテンプレートを見つけることができると思いますので、右クリック等でダウンロードしておきます。(ファイル名は「Filter_Default.html」です。)今回のカスタマイズでは、このファイルをベースとして進めていきます。
「Filter_Default.html」をテキスト エディタで開き、変更を加えるわけですが、変更すべき箇所はたったの2か所だけです。
- 3行目付近の
<title>
タグ - 23行目付近の
ShowCounts: false
<title>
タグに関しては、今回は「絞り込みアイテム(数字付き)」としました。ShowCounts
については、false
をtrue
に変更します。つまり、ShowCounts: true
が「結果件数」を表示するための指定となっています。この編集済みのファイルを保存し、ファイル名を変更しておきます。今回は「Filter_Default_Count.html」としました。
次に、このファイルを「マスター ページ ギャラリー」にアップロードします。「マスター ページ ギャラリー」は「サイトの設定」から「マスター ページとページ レイアウト」と辿ると開くことができます。「マスター ページ ギャラリー」に「Filter_Default_Count.html」をアップロードします。
この場合、おそらく設定を変える必要はないと思いますが、念のため確認する箇所は次の3つです。
- 「コンテンツ タイプ」が「フィルター表示テンプレート」になっていること
- 「対象コントロールの種類(検索)」で「Refinement」が選択されていること
- 「関連付けられているファイル」にチェックが入っていること
アップロードすると、見慣れないファイル「Filter_Default_Count.js」がいつのまにか作成されていることに気が付くと思います。このファイルは「デザイン マネージャー」が自動で作成してくれた「表示テンプレート」です。「デザイン マネージャー」に移動し、「5. 表示テンプレートの編集」から「Filter_Default_Count」に対して「メジャー バージョンの発行」をします。
ここまできたら、もう一息です。検索の結果画面に移動し、「ページの編集」を行い、左側の「絞り込み」で「Web パーツの編集」を行います。Web パーツの編集メニューから「絞り込み条件の選択…」をクリックします。
画像のようなポップアップが表示されるので、「表示テンプレート」を「絞り込みアイテム(数字付き)」へ変更します。さらに、ここが重要(気が付かずに悩みました…)なのですが、この設定を「選択した絞り込み条件」に表示されている「結果件数」を表示したい全ての条件に対して行います。既定では、「LastModifiedTime」だけが特殊なテンプレートを使用しているため、それ”以外”は変更しても構わないと思います。
ポップアップを「OK」で閉じ、Web パーツの編集メニューも「OK」で閉じた後にページを保存すると…
お疲れ様でした!!「絞り込みパネル」に「結果件数」が表示されました!!