內容搜尋網頁組件簡介

英文原文已於 2013 年 1 月 9 日星期三發佈

您好,我的名字是 Kerem Yuceturk,我是 SharePoint 企業內容管理團隊的程式技術經理。談到內容搜尋網頁組件,我深感榮幸,這是我們在 SharePoint 2013 版新增的眾多功能中,最有趣的功能之一。 它將能替世界各地的 SharePoint 愛用者帶來多種使用案例。

在開始介紹內容搜尋之前,請容許我先做個簡要的概述,讓您了解此網頁組件希望達成的目標。如果您曾經在 SharePoint 2007 與 2010 版本時期接觸過像是建立內部網路入口網站或知識管理解決方案之類的發行案例,那您當時使用的很有可能就是內容查詢網頁組件。內容查詢能夠根據您設定的一組準則來顯示動態內容。所以如果您要在內部網路首頁上顯示一個新聞文章的清單,或是在知識中心上列出銷售報表清單,內容查詢都可以替您做到。

但是其中有個陷阱:若您想要顯示不屬於同網站集合的項目,很抱歉,辦不到。內容查詢網頁組件的範圍以前 (目前也仍然) 僅限於該網頁組件所位於的網站集合。

在 SharePoint 2013 中,FAST Search 與 SharePoint Search 這兩個功能已經合併在一起,並緊密地整合在 SharePoint 中。這項變更當中也包含了一個全新的工具,供您在內部網路或不知網站集合界限的網際網路網站上發行內容。

內容搜尋可以顯示搜尋索引中的任何內容,包括橫跨多個網站集合中的內容,就連 SharePoint 以外的內容都可以顯示 (將這些內容經過編目並置於搜尋索引中即可)。假設正在檢視頁面的使用者擁有權限可檢視問題中的項目,如果搜尋已將內容編目的話,您就可以顯示內容,不管此內容位於何處。還有,由 SharePoint 2013 內建的分析功能,它也能夠根據使用模式來顯示建議與熱門的項目。

如果剛剛所介紹的部分正是您想嘗試的功能,只要移至網頁組件新增器,並選擇 [內容彙總] 類別,您就能夠在 SharePoint 伺服器陣列中找到內容搜尋。(目前未提供 Office 365 使用內容搜尋,但是我們正致力讓您您未來可以使用。) 

圖 1. 來自不同環境的兩個內容搜尋網頁組件:位於左邊的是顯示來自其他網站集合 PowerPoint 檔案的內部網路網站。右邊的是顯示產品型錄項目的 Contoso Electronics 網站

 

在高階方面,使用內容搜尋很容易,只要按照下列步驟進行即可:

  1. 選擇要顯示的項目 (制訂一個搜尋查詢,使它能夠將這些項目作為搜尋結果的方式傳回)。
  2. 依您希望的方式將設定項目的格式 (使用顯示範本以自訂項目的外觀)。

下列為一些關於這兩個步驟的詳細資訊。

選擇要顯示的項目

擁有多個預先設定查詢的全螢幕查詢產生器是內容搜尋網頁組件引以為傲的功能,讓您可以輕鬆上手。它還配備了可預覽查詢結果的面板,供您調整查詢內容。它已經與 SharePoint 2013 的全新搜尋概念充分整合,例如,您可以使用結果來源與查詢規則來取得結果。它也擁有進階模式:基本上,這個模式是一個放大的搜尋方塊,可供您透過關鍵字查詢 (KQL) 語法來寫入任何查詢,您可以透過預覽面板來試用此功能。

圖 2. 在查詢產生器中,位於左側的是工具,右側的是結果預覽

 

內容搜尋也支援一組豐富的動態值 (又稱為查詢變數),可用在各種不同的查詢中;例如,今天的日期、目前的使用者名稱、目前頁面的任何欄位或是來自網路屬性包的自訂屬性。查詢產生器與動態值這兩個部分各自都值得另外撰寫部落格文章做進一步說明,但對於目前來講,如果您想要探索一些可能性的話,可以先嘗試使用下列的查詢變數:

{Today-7} :一個星期以前的日期。非常適合進行「本週最新動態」之類的查詢。
{User.Name} :目前使用者的名稱。可以用來顯示正在檢視該頁面的使用者之內容。它也適用於任何屬性,包括來自目前使用者設定檔的自訂屬性。
{Page.MyCustomTextField} :此變數能夠取得欄位之中的值,而此欄位已由您新增至您所使用的頁面之內容類型中。
{Site.URL} :可取得目前網站的 URL,或任何自訂屬性。也適用於 SiteCollection
{Term} :來自受管理導覽的目前字詞。如需詳細資訊,請參閱名為〈開始熟悉 FURL〉的部落格文章。

依照您的喜好設定項目格式:顯示範本

我們不斷地聽到客戶提起、令人苦惱的主要問題之一,便是使用 XSL 來設定內容查詢網頁組件的輸出格式時,是多麼地煩人。XSL 是一個相對模糊、難以理解的網頁技術,就算是最資深的網頁工程師,當他們在將結果格式化的過程中嘗試進行些許變化時,對於相關的語法也是百思不得其解。

在 SharePoint 2013 中,有一個全新的方法,可供您利用 HTML 與 JavaScript 來代替 XSL,進而設定顯示於內容搜尋網頁組件中之項目的格式:那就是顯示範本。

顯示範本使得進行下列動作時,明顯地變得容易許多:

  • 指定要從搜尋中擷取哪些 Managed 屬性。
  • 如有需要,可透過 JavaScript 來操縱已擷取的 Managed 屬性之值。
  • 在瀏覽器中,以 HTML 的方式顯示這些值。

圖 3. 每一欄中,透過三組不同的顯示範本,都會顯示相同的搜尋結果。

 

顯示範本位於您網站集合的主版頁面圖庫中。為了方便您使用, 在名為 [顯示範本] 的資料夾中,已經替您預先安裝了數個顯示範本,所以,如果想要體驗的話,您可以隨時瀏覽該資料夾。建立新顯示範本的最佳作法,就是將複製現有的範本,然後變更其屬性與內容。請注意,您務必處理那些資料夾中的 .html 檔。當您修改與一個 .js 檔同名的 .html 檔時,SharePoint 就會自動產生該 .js 檔。

顯示範本的部分,也值得另外撰寫部落格文章,以對該主題做進一步說明。所以,請容許我在此將本節做一個結尾,以確保這篇文章簡單扼要。

結論

我希望以上說明,已讓您初步了解內容搜尋網頁組件能夠在 SharePoint 部署中替您完成的工作。未來的文章將會進一步替您詳細說明關於這裡所介紹的各種概念,敬請期待。

這是翻譯後的部落格文章。英文原文請參閱 Introducing the Content Search Web Part