SharePoint 2013 検索結果 Web パーツでカスタムの管理プロパティを表示する

こんにちは、SharePoint サポートの佐伯です。 今回の投稿では、検索結果 Web パーツでカスタムの管理プロパティを表示する方法についてご紹介します。 SharePoint サイトでコンテンツの検索を行う際、リストに追加したカスタム列も検索結果に表示させたいことがあると思います。 その場合、カスタム列を検索の管理プロパティにマッピングすることで、検索結果でカスタム列に入力された情報を取得することが可能です。また、表示テンプレート (*1) と呼ばれる検索結果の表示を定義したファイルを編集することで、取得したカスタム列の情報を表示させることができます。 カスタム列とカスタム管理プロパティの作成方法、カスタムの管理プロパティを表示する表示テンプレートの編集方法および適用方法について、一連の流れで手順を記載いたします。ご要件に合わせて適宜変更してください。ご実施の際は、検証環境で十分な動作確認を行ってください。 <目次> 1) カスタムの管理プロパティの作成 2) カスタムの管理プロパティを表示する表示テンプレートの編集 3) カスタムの管理プロパティを表示する表示テンプレートの適用 1) カスタムの管理プロパティの作成 リストまたはライブラリでカスタムの列を作成し、カスタムの管理プロパティにマッピングします。カスタム列を作成する際、リスト列を作成するかサイト列を作成する方法があります。それぞれの列で管理プロパティを作成する手順を記載します。なお、複数のリストまたはライブラリで同じ列を使用する場合は、サイト列を作成する方法が便利です。 ■ リスト列を作成する場合の手順 1. 目的のリストでリスト列を作成します。 1-1. リストの [リストの設定] を開き、[列の作成] をクリックします。 1-2. 列名を TestField1 とし、その他の項目を設定します。 2. テスト用にリスト アイテムを作成し、追加した列にも値を設定しておきます。 3. フル クロールを実行します。フル クロールを実行すると、上記で作成した列がクロールされたプロパティとして反映されます。 3-1. サーバーの全体管理サイトにアクセスし、[アプリケーション構成の管理] – [サービス アプリケーションの管理] より、該当の Search Service Application をクリックします。 3-2. 左のサイド リンク バーから…

0

SharePoint 2013 カスタムの検索結果の種類を作成する

こんにちは、SharePoint サポートの佐伯です。 今回の投稿では、検索結果の種類についてご紹介します。 検索結果の種類について 検索結果の種類では、対象となる検索結果の条件と、その条件を満たす場合に実行するアクションを設定します。 もう少し詳しく説明すると、検索結果がディスカッションであれば、ディスカッションの表示に適した表示テンプレート Item_Discussion が適用されるよう、検索結果の種類として “Discussion” が設定されています。 この設定により、検索結果がディスカッションの場合は下記のような表示になります。 もうひとつ例をあげると、検索結果が Excel であれば、Excel の表示に適した表示テンプレート Item_Excel が適用されるよう、検索結果の種類として “Microsoft Excel” が設定されています。 この設定により、検索結果が Excel の場合は下記のような表示になります。 補足 : 検索結果の種類はその他にもございます。詳しくは、[検索結果の種類の管理] 画面よりご確認ください。 – 検索結果の種類の管理画面と反映される範囲について 検索結果の種類は、サイト コレクション、サイト単位で設定が可能です。設定された検索結果の種類は、「検索サービス>サイト コレクション>サイト」のように親から継承されます。 サイト コレクションで設定する場合は、[サイトの設定] – [サイト コレクションの管理] – [検索結果の種類] より、設定します。サイトで設定する場合は、[サイトの設定] – [検索] – [検索結果の種類] より、設定します。 以上の内容をふまえて、実際に検索結果の種類を作成する例を見ていきましょう。 検索結果の種類を作成する例 1) 特定の検索結果の種類に対して、カスタムの表示テンプレートを適用したい 2) 検索結果の管理プロパティがある条件に合致した場合に、目的の表示テンプレートを適用したい 3) 複数の検索結果の種類に対して、同一の表示テンプレートを適用したい 1) 特定の検索結果の種類に対して、カスタムの表示テンプレートを適用したい…

0

SharePoint 2013 検索の結果ブロックの表示をカスタマイズする

こんにちは、SharePoint サポートの佐伯です。 先日の投稿では、検索結果ページにカスタムの結果ブロック (関連のある検索結果の特定のグループ) を追加するためのクエリ ルールの作成方法についてとりあげました。今回の投稿ではさらに、これらの結果ブロックの表示をカスタマイズする方法についてご紹介します。 例) 検索結果ページに画像の検索結果をサムネイルで表示する結果ブロックを追加する 検索ボックスに「画像」というキーワードを含んで検索した場合に、画像ファイルを対象とした検索結果を取得するような結果ブロックを追加し、検索結果をサムネイルで表示するようカスタマイズしてみましょう。 それでは、以下の手順を実施していきます。 手順1) 画像ファイルの結果ブロックを表示するクエリ ルールを作成する (先日の投稿で類似例を紹介しております) 手順2) サムネイルを表示するための表示テンプレートを作成する (本投稿のテーマ) 手順3) 結果ブロックに表示テンプレートを設定する (本投稿のテーマ) 手順1) 画像ファイルの結果ブロックを表示するクエリ ルールを作成する 1-1. サイトにアクセスし、[サイトの設定] 画面で [サイト コレクションの管理] – [検索クエリ ルール] をクリックします。 補足 : クエリ ルールは Search Service Application、サイト コレクション、サイト単位で設定することが可能です。今回はサイト コレクション単位で設定します。 1-2. [クエリ ルールの管理] 画面でコンテキストを選択します。ここでは、[ローカル SharePoint の結果 (システム)] を選択します。 コンテキストを選択後、[新しいクエリ ルール] をクリックします。 1-3. ルール名を入力します。ここでは、画像の検索 とします。…

0

SharePoint 2013 検索結果が 0 件の場合の表示をカスタマイズする

こんにちは、SharePoint サポートの佐伯です。 今回の投稿では、検索結果 Web パーツで検索結果が 0 件の場合の表示をカスタマイズする方法をご紹介します。 検索結果 Web パーツでは、一致する検索結果が得られない場合に既定で以下のようなメッセージが表示されます。 この表示はコントロール表示テンプレートに定義されています。 参考) 本投稿を読み進める前に、下記の記事で表示テンプレートの概要を説明しておりますので、ご参照いただけますと幸いです。 SharePoint 2013 検索結果の表示を制御する表示テンプレート 検索結果 Web パーツに既定で設定されているコントロール表示テンプレートは Control_SearchResults です。Control_SearchResults 内の下記のコードにより、検索結果が 0 件の場合の表示が定義されています。これを編集することで、表示するメッセージやデザインを変更することができます。 <!–#_ if(ctx.ClientControl.get_shouldShowNoResultMessage()){ _#–> <div id=”NoResult”> <!–#_ var emptyMessage = ctx.ClientControl.get_emptyMessage(); if ($isEmptyString(emptyMessage)) { _#–> <div class=”ms-textLarge ms-srch-result-noResultsTitle”>_#= $htmlEncode(Srch.Res.rs_NoResultsTitle) =#_</div> <div>_#= $htmlEncode(Srch.Res.rs_NoResultsSuggestions) =#_</div> <ul> <li>_#= $htmlEncode(Srch.Res.rs_NoResultsSpelling) =#_</li> <li>_#= $htmlEncode(Srch.Res.rs_NoResultsDifferentTerms) =#_</li> <li>_#= $htmlEncode(Srch.Res.rs_NoResultsGeneralTerms)…

0

SharePoint 2013 プロパティ表示画面の参照の表示をカスタマイズする

こんにちは、SharePoint サポートの佐伯です。 今回の投稿では、プロパティの表示画面の右側に表示される [参照] の表示をカスタマイズする方法についてご紹介します。 この [参照] の表示は、表示テンプレートと呼ばれるファイルに定義されています。タイトルを含む全体の表示はコントロール表示テンプレートによって制御され、各アイテムの表示はアイテム表示テンプレートによって制御されます。変更する箇所に応じてコントロール表示テンプレート、アイテム表示テンプレートを編集することで表示内容をカスタマイズします。 – 表示テンプレート ファイルと格納場所 プロパティ表示画面の [参照] の表示テンプレート ファイルは、マスター ページ ギャラリーに格納されています。 1. [サイトの設定] – [Web デザイナー ギャラリー] – [マスター ページ] にアクセスします。 2. [Display Templates]、[System] フォルダを順に展開します。このフォルダ内に該当の表示テンプレートが格納されています。 コントロール表示テンプレートは Control_Recommendations です。 アイテム表示テンプレートは Item_Recommendations です。 例) プロパティ表示画面の [参照] に背景色を追加する 以下のように背景色をつけてみましょう。全体の色を変更するので、コントロール表示テンプレートを編集します。 – 手順 1. [サイトの設定] – [Web デザイナー ギャラリー] – [マスター ページ] をクリックし、マスター ページ…

0

SharePoint 2013 検索結果のホバー パネルのヘッダーをカスタマイズする

こんにちは、SharePoint サポートの佐伯です。 今回の投稿では、検索結果のホバー パネルのヘッダーをカスタマイズする方法についてご紹介します。 ホバー パネルの表示は複数の表示テンプレートというファイルによって定義されています。過去の投稿では、ホバー パネルの本文やフッターの表示を変更するための表示テンプレートの編集方法をご紹介してきました。 参考) SharePoint 2013 検索結果のホバー パネルをカスタマイズする SharePoint 2013 検索結果のホバー パネルにカスタムのアクションを追加する SharePoint 2013 検索結果のホバー パネルのフッターで既定のアクションを非表示にする SharePoint 2013 検索結果のホバー パネルのフッターを削除する 今回は、このヘッダー領域の表示を定義する表示テンプレートを編集し、ヘッダーの表示を変更する方法について、例をあげて説明します。 例) ホバー パネルのヘッダーに表示されるビュー数を非表示にする 検索結果のアイテムによっては、以下のようにホバー パネルのヘッダーにビュー数が表示されます。 ホバー パネル表示テンプレートを編集し、検索結果のホバー パネルのヘッダーに表示されるビュー数を非表示にするカスタマイズを行いましょう。 – 手順 1. [サイトの設定] – [Web デザイナー ギャラリー] – [マスター ページ] をクリックし、マスター ページ ギャラリーを開きます。 2. [Display Templates]、[Search] の順にフォルダを展開し、Item_CommonHoverPanel_Header.html のコピーをダウンロードします。 3. Item_CommonHoverPanel_Header.html ファイルを開き、ビュー数を表示する以下のコードを削除、またはコメントアウトします。…

0

SharePoint 2013 検索結果のホバー パネルのフッターを削除する

こんにちは、SharePoint サポートの佐伯です。 前回の投稿では、検索結果のホバー パネルのフッターに表示されるアクションを非表示にする方法をご紹介しました。 今回は、検索結果のホバー パネルのフッターを削除したいという場合のカスタマイズ方法をご紹介します。 カスタマイズ方法をご紹介する前に、ホバー パネルの表示を制御する表示テンプレートについて確認していきましょう。 ホバー パネルの表示を制御する表示テンプレートについて 検索結果のホバー パネルの表示は、複数の表示テンプレートによって定義されています。ホバー パネルの表示をカスタマイズする際は、表示内容を変える箇所や目的に合わせて、編集する表示テンプレートを選択します。 ホバー パネル表示テンプレートは検索結果の種類ごとに既定で用意されており、ヘッダー、本体、アクションの共通のホバー パネル表示テンプレートを参照しています。 ホバー パネルのフッターに表示される「開く」や「送信」などのアクションを非表示にしたり、新たにカスタムのアクションを追加する場合は、共通のホバー パネル表示テンプレート (アクション) を編集します。(なお、場合によっては、ホバー パネル表示テンプレートを編集することもあります。共通のホバー パネル表示テンプレートは複数のホバー パネル表示テンプレートによって参照されているため、共通のテンプレートの方を編集すると、ホバー パネル全体に影響を及ぼします。特定の検索結果の種類 (例 ひとの検索結果) のホバー パネルのみ表示を変更したい場合は、ホバー パネル表示テンプレートを編集し、例えば共通のテンプレートを参照せずに独自の実装を行います。) フッター全体のデザインを変えたり、フッター自体を削除する場合は、ホバー パネル表示テンプレート (例 Item_Default_HoverPanel) を編集します。 ホバー パネルのフッターを削除する方法 マスター ページ ギャラリーからホバー パネル表示テンプレートをダウンロードし、編集します。今回は Item_Default_HoverPanel.html (既定のホバー パネル) ファイルの編集を例にします。 1. [サイトの設定] – [Web デザイナー ギャラリー] – [マスター ページ] をクリックし、マスター…

0

SharePoint 2013 検索結果のホバー パネルのフッターで既定のアクションを非表示にする

こんにちは、SharePoint サポートの佐伯です。 今回の投稿では、検索結果のホバー パネルのフッターに既定で表示されるアクションを非表示にする方法をご紹介します。 ホバー パネルのカスタマイズについては過去に何度か投稿しておりますが、ホバー パネルの既定のアクションを非表示にするカスタマイズは検索結果のカスタマイズの中でも比較的お問い合わせが多いものになりますので、今回とりあげました。 運用上、非表示にしたいアクションがある場合は、以下でご紹介する方法を参考にカスタマイズを行ってください。例) ホバー パネルのフッターの「送信」を非表示にする ホバー パネル表示テンプレートを編集し、検索結果のホバー パネルのフッターに表示される「送信」を非表示にします。 – 手順 1. [サイトの設定] – [Web デザイナー ギャラリー] – [マスター ページ] をクリックし、マスター ページ ギャラリーを開きます。 2. [Display Templates]、[Search] の順にフォルダを展開し、Item_CommonHoverPanel_Actions.html のコピーをダウンロードします。 3. Item_CommonHoverPanel_Actions.html ファイルを開き、「送信」を表示する以下のコードを削除、またはコメントアウトします。 <div class=”ms-srch-hover-action”> <!–#_             var emailLink = HP.GetEmailLink(ctx.CurrentItem.Title, ctx.CurrentItem.Path, ctx.CurrentItem.csr_ClientType, ctx.CurrentItem.ServerRedirectedURL); _#–>             <a clicktype=”ActionSend” id=”_#= $htmlEncode(id + HP.ids.send) =#_” class=”ms-calloutLink…

0

SharePoint 2013 コントロール表示テンプレートを編集して絞り込み Web パーツのデザインを変更する

こんにちは、SharePoint サポートの佐伯です。 今回の投稿では、コントロール表示テンプレートを編集して、絞り込み Web パーツのデザインを変更する方法についてご紹介します。絞り込み Web パーツ全体の表示はコントロール表示テンプレートによって制御されています。 そのため、絞り込み Web パーツの全体的なレイアウトやデザインを変更したい場合は、コントロール表示テンプレートを編集します。以下に例をあげて説明していきますので、ご参考にしていただけますと幸いです。 例) 絞り込み Web パーツに枠線を表示する 絞り込み Web パーツの右側に枠線が表示されるよう表示テンプレートを作成しましょう。 一からファイルを作成するよりも、既定の表示テンプレートをコピーして編集する方が簡単です。下記に手順をご紹介します。 1. [サイトの設定] – [Web デザイナー ギャラリー] – [マスター ページ] をクリックし、マスター ページ ギャラリーを開きます。 2. [Display Templates]、[Filters] の順にフォルダを展開し Control_Refinement.html ファイルをダウンロードします。 3. ダウンロードした Control_Refinement.html ファイルのファイル名を変更します。Control_Refinement_Border.html とします。 4. Control_Refinement_Border.html ファイルを開き、<body> タグの直後にある <div> の id に、この *.html ファイルのファイル名を記述します。 <body> <div id=”Control_Refinement_Border”> 5….

0

SharePoint 2013 フィルター表示テンプレートをカスタマイズして絞り込み条件数を表示する

こんにちは、SharePoint サポートの佐伯です。 前回の投稿でフィルター表示テンプレートの概要について説明しましたので、今回の投稿ではフィルター表示テンプレートのカスタマイズについてご紹介します。SharePoint 既定のフィルター表示テンプレート “絞り込みアイテム” を使用すると、絞り込み条件は以下のように表示されます。 今回は、この表示に絞り込み条件数を追加するフィルター表示テンプレートを作成しましょう! フィルター表示テンプレート (*.html) の作成 新たにフィルター表示テンプレートを作成しましょう。既存の表示テンプレートをコピーして作成すると簡単です。SharePoint 既定のフィルター表示テンプレート “絞り込みアイテム” をもとに、フィルター表示テンプレートを作成します。 なお、表示テンプレートの *.html ファイルは発行インフラストラクチャをアクティブにしている場合のみ作成できます。この投稿では、発行インフラストラクチャをアクティブにしたサイトで *.html ファイルを作成する方法をご紹介します。 1. [サイトの設定] – [Web デザイナー ギャラリー] – [マスター ページ] をクリックし、マスター ページ ギャラリーを開きます。 2. [Display Templates]、[Filters] の順にフォルダを展開し、Filter_Default.html ファイルをダウンロードします。 3. ダウンロードした Filter_Default.html ファイルのファイル名を変更します。ここでは、Filter_Default_Counts.html に変更します。 4. Filter_Default_Counts.html ファイルを開き、<body> タグの直後にある <div> の id に、この *.html ファイルのファイル名を記述します。 <body>     <div id=”Filter_Default_Counts”>…

0