SharePoint Server で新しい結果ソースを使用するように検索結果 Web パーツを構成する方法
適用対象:2016
2019
Subscription Edition
SharePoint in Microsoft 365
このシリーズの前の記事「 検索センター サイト コレクションを作成し、SharePoint Server でコンテンツのクロールを有効にする方法」では、検索センター サイト コレクションを作成してコンテンツのクロールを有効にする方法について説明しました。 この記事では、以下について説明します。
ページ ライブラリのバージョン管理をオフにする方法
検索結果 Web パーツを構成するときにページのチェックインとチェックアウトを行いたくない場合は、 Pages ライブラリのバージョン管理を無効にすることができます。
以下に [ページ] ライブラリのバージョン管理をオフにする手順を示します。
[サイトの設定] -->[サイトの内容] に移動します。
[サイト コンテンツ] ページで、[ページ] ライブラリをクリックします。
[ページ] ライブラリで、[ライブラリ] タブをクリックしてから [ライブラリの設定] をクリックします。
[設定] ページで、[バージョンの設定] をクリックします。
[ バージョン設定 ] ページの [ コンテンツの承認 ] セクションで、[ 送信されたアイテムに対するコンテンツ承認を必須にする ] に [ いいえ ] を選択します。
[ ドキュメントのバージョン履歴 ] セクションで、[ このドキュメント ライブラリのファイルを編集するたびにバージョンを作成する ] に対して [ バージョンを管理しない ] を選択します。
[ チェックアウトを必須にする ] セクションで、[ ドキュメントを編集する前に必ずチェックアウトする ] に対して [ いいえ ] を選択します。
検索センターの検索先の作成について考慮すべき理由
検索先は、検索結果を取得する場所を指定します。 たとえば、このシナリオでは、SharePoint ファーム内のすべてのサイトから検索結果を取得するのではなく、ファーム内の特定の 1 つのサイトのみから取得します。
検索センターの既定の結果ソースは、完全な SharePoint Server ファームから検索結果を返します。 SharePoint Server ファーム全体の検索結果が必要な場合は、このシリーズの次の記事「 SharePoint Server の検索結果ページで絞り込み条件を使用することを計画する」に進むことができます。 ただし、SharePoint Server ファーム内のサブセット (このシナリオでは特定のサイト) からの検索結果のみを取得する場合は、結果ソースを作成する必要があります。
検索先を作成する方法
アクセス許可レベルに応じて、以下の 3 つのレベルに検索先を作成します。
アクセス許可レベル | 検索先を追加する場所 |
---|---|
Search Service アプリケーションの管理者 |
ファーム内のすべてのサイト コレクションに対して |
サイト コレクションの管理者 |
サイト コレクション内のすべてのサイトに対して |
サイト コレクションの所有者 |
単一のサイトに対して |
領域を節約するために、サイト コレクション管理者として結果ソースを作成する方法のみを示します。
[サイトの設定] -->[検索結果ソース] に移動します。
[ 検索先の管理 ] ページで、[ 新しい検索先 ] をクリックします。
[検索先の追加] ページで [名前] を入力します。 [プロトコル] と [タイプ] の値を選択し、[クエリ ビルダーを起動します] をクリックします。 ダイアログが開きます。
このシナリオでは、結果ソースの Articles という名前を付け、プロトコルと型の既定値を保持しました。
[ クエリの作成 ] ダイアログで、結果ソースを定義します。
このシナリオでは、ファーム内の特定のサイトのみから検索結果を取得したいと考えていたことを思い出してください。 そのため、[クエリ テキスト] フィールドに以下を追加します。
{searchTerms?} (contentclass:sts_listitem) path:http://<path>
次に進む前に、入力した内容を分析しましょう。
{searchTerms?}
結果ソースでは、ユーザーが何かを検索するときにクエリ ボックス内に入力する単語を含める必要があります。 明らかに、ユーザーが何を入力するのかを知る方法はありません。 そのため、{searchTerms?}
クエリ変数を追加しました。 ちなみに、クエリ変数は中かっこで囲まれているため、クエリ変数であることを示すことができます (詳細については、「 SharePoint Server のクエリ変数」を参照してください)。 ユーザーがクエリを入力すると、このクエリ変数は、ユーザーがクエリ ボックスに入力した単語に置き換えられます。 変数の末尾にある疑問符は、クエリ ボックスに単語が入力されていない場合は、変数を無視する必要があることを意味します。(contentclass:sts_listitem)
つまり、リスト アイテムのみが結果ソースに含まれます。path:http://<path>
これは、検索結果の取得元となるサイトのパスです。
[テスト タブをクリックしてから [詳細表示] をクリックして、検索先が正常に機能しているかテストします。
{searchTerms} フィールドに、ユーザーによって入力されるクエリをシミュレートするためのクエリ語句を入力し、[テスト クエリ] をクリックします。
このシナリオでは、 検索構成 を入力しました。
52 件の結果が返されていることに注意してください。 (次のセクションでこれがクールな理由をお伝えします。..)。
[ OK] を クリックしてダイアログを閉じ、[ 保存] をクリックします。
これで、検索センターに検索先が作成されました。この新しい検索先を使用するための検索結果 Web パーツの構成に進むことができます。
新しい検索先を使用するように検索結果 Web パーツを構成する方法
既定では、検索結果 Web パーツは、検索結果ページで使用されます。 検索結果 Web パーツを構成するには、検索結果ページに移動する必要があります。 以下のことを行う必要があります。
検索センターのホーム ページ (このページの既定の URL は <site>/Pages/default.aspx ) で、検索ボックスにクエリを入力し、 Enter キーを押します。
このシナリオでは、 検索構成 を入力しました。
Enter キーを押すと、検索結果ページに移動します (このページの既定の URL は <site>/Pages/results.aspx)。
このシナリオでは、1,051 件の検索結果が返されました。
既定では、完全な SharePoint Server ファームから検索結果が取得されます。 以下の手順では、新たに作成された検索先からの検索結果のみが返されるようにこの設定を変更する方法を説明します。
検索結果ページで、[設定] メニュー -->[ページの編集] をクリックします。
検索結果 Web パーツで、[Web パーツ メニュー] をクリックしてから [Web パーツの編集] をクリックします。
Web パーツのツール ウィンドウで、[ クエリの変更 ] をクリックします。 ダイアログが開きます。
ダイアログの [ クエリの選択 ] メニューから、新しく作成した結果ソースを選択します。
このシナリオでは、[記事 (サイト コレクション)] 検索先が選択されています。
ダイアログで [OK] を クリックし、[Web パーツ ツール] ウィンドウで [OK] を クリックし、ページを保存します。 構成が機能することを確認するために、クエリを入力します。
このシナリオでは、 検索構成 を入力しました。
52 件の結果が返されました。これは、結果ソース構成でクエリをテストしたときに返された項目の数と同じです。 すばらしいですね。
これで、検索結果 Web パーツには、関係のある検索結果のみが表示されるようになりました。次のタスクでは、ユーザーが絞り込み条件を使用することによって、これらの検索結果をフィルター処理しやすくするようにします。