在 SharePoint Server 中規劃轉換查詢和順序結果
適用於:2013 Subscription Edition SharePoint in Microsoft 365
您可以將查詢轉換新增至網頁組件、新增滿足某些條件時的查詢規則,以及將所有查詢直接轉換成結果來源,以建立特定的搜尋經驗。
SharePoint Server 包含大量預先設計好的搜尋經驗 (搜尋類別),如:「視訊」、「人員」和「對話」。 這些全都包含預先定義的查詢轉換,以最佳化搜尋經驗。 您也可以設計自己的搜尋經驗,包括您自己的查詢轉換,如:「音樂」或「圖片」。
了解查詢轉換和查詢變數
您可以設定查詢轉換,以取代查詢的特定內容,如:該查詢將用來取得搜尋結果的結果來源,或是該查詢顯示搜尋結果時的排序。
查詢轉換可包含查詢變數。 查詢變數為數值的預留位置,當確實執行查詢時,特定數值將會取代該查詢變數。
下表為查詢變數的範例。
查詢轉換取代此查詢變數: | 使用這個: |
---|---|
{User.Name} | 輸入查詢的使用者名稱。 |
{Site.URL} | 使用者輸入查詢的網站。 |
{Today} | 今天的日期。 |
{SearchBoxQuery} | 使用者輸入的查詢。 |
{searchTerms} | 使用者輸入的查詢已變更為最近一次的轉換。 |
請參閱 SharePoint Server 中的查詢變數了解所有可用查詢變數的概觀。
當查詢轉換取代傳入查詢時,它會使用 查詢範本 。 A query template is a query that includes query variables, for example "{searchTerms} contenttype:picture".
If you, for example, want to create a Pictures search vertical that only returns pictures in the search results, you could configure a query transform that uses the query template "{searchTerms} contenttype:picture" to add "contenttype:picture" to all queries. If a user then types the query "moon" in the Pictures vertical, the transform replaces the query variable "{searchTerms}" with "moon" and changes the query to "moon contenttype:picture".
您可以在三個地方設定查詢轉換:
網頁組件內
查詢規則內
結果來源內
使用者查詢首先由網頁組件進行轉換,然後由任何適用的查詢規則轉換,最後由結果來源轉換。 當您在結果來源內設定轉換時,由於結果來源最後才會轉換查詢,因此將不會捨棄或覆寫轉換變更。
使用查詢產生器寫入及測試查詢轉換
查詢產生器將協助您寫入及測試查詢轉換。 如要建置查詢,您可以使用「關鍵字查詢語言」(KQL),也可以新增查詢變數。 您可以透過設定查詢變數的暫時測試值,使用查詢產生器測試查詢、執行查詢,並預覽搜尋結果。
如需有關建置搜尋查詢以及 KQL 語法範例的詳細資訊,請參閱<在 SharePoint 2013 中建立搜尋查詢 (MSDN)>。 如需所有可用查詢變數的概觀,請參閱< Query variables in SharePoint Server>。
針對網頁組件轉換查詢
您可以在網頁組件內轉換搜尋,例如:「內容搜尋網頁組件」和「搜尋結果網頁組件」。 可透過查詢規則或結果來源的查詢轉換,覆寫網頁組件的查詢轉換。
網頁組件內的查詢轉換最常用於指定查詢應傳送至哪個結果來源。 舉例來說,如果您要建立僅針對圖片搜尋的自訂搜尋經驗,首先要透過只傳回圖片的查詢轉換建立結果來源。 接著,您要建立網頁組件,且該組件具備查詢轉換,可變更該網頁組件內任何執行的查詢,以使用您的新 圖片 結果來源,而非預設值。
在網頁組件內進行查詢轉換的另一個常用方法是變更特定的網頁組件。 舉例來說,建立圖片結果來源之後,您可以透過使用圖片結果來源的查詢轉換新增網頁組件,另外,將搜尋結果限制為「只顯示最近修改過的圖片」。
利用查詢規則轉換查詢
您可以使用查詢規則,嘗試了解使用者查詢的真正目的,並回應使用者想要尋找的項目。 針對每個查詢規則,您可以指定在哪些情況下應該使用該規則,以及使用該規則時應觸發的動作。 通常,您可建立適用於網站的查詢規則,不過,您也可以建立適用於網站集合或是在 Search Service 應用程式中所有網站集合的查詢規則。
建立查詢規則的第一個步驟是指定規則的 內容 。 最低需求是您必須指定查詢所使用的規則將對應至哪一個結果來源。 舉例來說,如要建立一個僅適用於人員搜尋的規則,您必須指定該項內容為 本機人員結果 結果來源。 您可以選擇性地在查詢規則內容中包含一個使用者區段或是主題類別。
下一步是指定將套用之規則的 條件 。 如果您希望該項查詢可套用至所有查詢,可以移除所有條件。
下表為可用查詢規則的條件。
查詢規則條件 | 描述 | 範例 |
---|---|---|
查詢完全符合關鍵字 | 如果查詢完全符合指定的單字或片語,請套用該查詢規則。 | 例如:您指定 "picture; pic" 為關鍵字。 當使用者在搜尋框中輸入查詢 "picture" 或 "pic" 時,將會套用該查詢規則。 如果使用者輸入 "picture" 或 "sunny picture" 時,將不會套用該規則。 |
查詢包含動作字詞 | 當查詢包含單字或片語形式的字詞,表示使用者可能有特殊的查詢意圖,此時,請套用該查詢規則。 該字詞必須位於查詢的開頭或結尾,且可能是動詞、命令或篩選。 | 如果查詢包含「下載」這個片語,表示使用者可能不是在尋找包含「下載」一詞的項目,而是試圖下載某些項目。 |
查詢完全符合字典 | 當查詢完全符合字典項目,請套用該查詢規則。 此項目可以是字詞庫中的一個字詞,或是人員名稱字典中的一個字詞。 | |
查詢較常用於來源 | 對於不同結果來源,如果使用者的查詢在執行上比目前的查詢更為普遍,請套用該項查詢規則。 此情況將針對使用者輸入的各種結果來源,使用查詢分析。 | 您可以建立查詢規則,檢查查詢在 視訊 類別內是否更普遍執行。 如果是,該查詢規則將能使視訊的結果更為顯著。 |
使用者常點選的結果類型 | 如果查詢常常在使用者點選特定結果類型的結果之下結束,請套用該查詢規則。 當您建立新的結果類型時,可以指定記錄這些點選動作,以用於查詢規則。 | 如果使用者常在這個查詢點選「圖片」結果類型,可在結果區塊中提供與圖片相關的結果較為恰當。 |
進階查詢文字相符 | 如果查詢符合規則運算式,請套用該查詢規則。 您還可以使用不同的關鍵字、字典與動作字詞條件 (之前解釋過),不過,是使用更進階的控制。 | 若要比對所有格式為 nnn-nnn-nnnn 的電話號碼,請指定正則表達式 「 (? (\d{3}) ) ?-? (\d{3}) - (\d{4}) 」。。 |
最後一個步驟是指定套用該查詢規則時所觸發的 動作 。 您可以選擇性地指定查詢規則啟用的開始日期與結束日期。
下表為可用的查詢規則動作。
查詢規則動作 | 描述 | 範例 |
---|---|---|
新增升階的結果 | 在排名結果之上顯示升級的結果 (在 SharePoint Server 較舊版本中的別名為「首選」)。 當某個項目並未建立索引,或是該項目的文件摘要較為劣等時,最好使用升級的結果。 在其他情況下,請考慮變更結果排名。 | 舉例來說,針對「病假」查詢,您可以將連結新增至高於所有排名結果的「人力資源」網站。 |
新增結果區塊 | 新增一個結果區塊,其中包含一個以特定方式與查詢相關聯的小組結果。 您可以針對結果區塊進行升級,或者您可以針對其他搜尋結果進行排名。 針對結果區塊指定的查詢轉換,將會轉換原始查詢的複本。 您還可以指定應使用哪個顯示範本以顯示結果區塊。 |
針對含有「Contoso 銷售報告」的查詢,查詢規則可使用分類字典,將 "Contoso" 識別為客戶,然後顯示與 "Contoso" 有關的結果區塊,且是來自您的客戶關係管理 (CRM) 系統。 |
透過變更查詢來變更排名的結果 | 新增變更原始查詢的查詢轉換。 舉例來說,該轉換可針對某些結果進行升級或降級。 變更搜尋結果排名 (例如:透過網站或 URL 提升適當的結果) 是用來新增升級結果的常用替代方式。 透過變更查詢變更排名結果,其優點是安全性調整與精簡。 此外,如果文件無法再使用,則搜尋結果會消失。 您可以根據一些變數 (如:副檔名或特定關鍵字),以動態的方式變更搜尋結果的排列順序。 您可以針對結果進行升級或降級,也可以指定有多少結果應升級或降級。 如需相關詳細資訊,請參閱<SharePoint Server 中的搜尋結果排名概觀>中的<以查詢規則影響搜尋結果的排名>章節。 |
針對包含「下載工具箱」的查詢,查詢規則可將「下載」一詞識別為動作字詞,並提高指向內部網路之特定下載網站的搜尋結果。 |
在結果來源中轉換查詢
針對每個結果來源,您可以指定所有來自結果來源的搜尋結果必須以特定方式轉換。 例如,預先設定的「本機視訊結果」結果來源會使用查詢轉換,只傳回從本機 SharePoint 索引的視訊結果。
SharePoint Server 透過預先定義的立即使用查詢轉換,提供許多預先設定的結果來源。 您還可以建立新的結果來源,並且套用不同的查詢轉換。 您可以針對每個搜尋提供者建立多個結果來源,也可以在每個結果來源設定不同的查詢轉換。
使用者查詢首先由網頁組件進行轉換,然後由任何適用的查詢規則轉換,最後由結果來源轉換。 當您在結果來源內設定轉換時,由於結果來源最後才會轉換查詢,因此將不會捨棄或覆寫轉換變更。 您可以重複使用網頁組件或結果區塊中的結果來源查詢轉換,也可以建立僅適用於來自某些結果來源的查詢規則或結果類型。
使用結果類型來變更結果的顯示方式
透過結果類型,您可以有條件地變更搜尋結果的顯示數量。 如要自訂一組相關結果的外觀,您可以建立顯示範本 (HTML),並讓顯示範本與結果類型產生關聯。 您也可以建立規則以指定顯示範本的顯示時機,並設定這些規則的優先權。
搜尋系統處理查詢的方式
輸入查詢或按一下會觸發查詢的元素之後,搜尋系統就會將查詢傳送到查詢處理元件。 此元件會處理查詢,然後將它傳送到適當的搜尋提供者以擷取結果。 搜尋提供者可能是本機搜尋索引或遠端來源。 從搜尋提供者收集結果之後,查詢處理元件就會執行另一次處理,然後傳回結果以供顯示。
搜尋系統會進行下列各項以處理查詢:
套用任何網頁組件轉換 。
套用任何查詢規則。 查詢規則動作可以轉換原始查詢,也可以觸發針對結果區塊轉換的平行查詢。
在結果來源套用任何查詢轉換。
剖析查詢並建立查詢語法樹以供內部使用。
執行文字分行、詞幹分析、拼字校正及同義字擴充,以依照語言處理查詢。
將使用者存取資訊附加到查詢。 這樣可指定執行查詢的使用者,以及該使用者擁有的權限。
將查詢傳送到搜尋索引或其他搜尋提供者。
收集並合併來自所有搜尋提供者的搜尋結果,並傳送回查詢處理元件。
針對結果類型評估搜尋結果。 如果結果符合特定的結果類型,則會使用針對結果類型所指定的顯示範本以顯示結果。
套用其他安全性修剪 (如果適用)。