2016-03-01 58 views
1

我正在構建基於REST API的連接器到使用sitecore的市場。我已經找到了文檔在這裏使用搜索API命令: https://sdn.sitecore.net/upload/sitecore6/65/sitecore_search_and_indexing_sc60-65-a4.pdfSitecore REST API搜索通過導航類別

我一直無法弄清楚如何使用它來搜索被分爲導航類別的內容,並不能確定是否有一個良好的這樣做的方法。我沒有設計網站,設計師是不再與我們合作的承包商。

我希望能夠根據已分配給他們的特定導航類別找到項目列表。我試圖讓類別ID本身的孩子,但沒有奏效。以下是與給定對象關聯的導航類別的圖片,以便增加說明: enter image description here

是否有一種簡單的方法來搜索這樣的項目?

+0

哪個版本的Sitecore?該文檔適用於更早的版本。 – jammykam

回答

0

假設您在7.2或更高版本,只需要搜索具有導航分類字段的ID(在您的索引中爲navigation_categorization)的項目,並將其設置爲您希望的項目的ID過濾。在你的圖片中,這將是「連接服務」項目的ID。

var context = ContentSearchManager.GetIndex("master").CreateSearchContext(); 
var computedLanguage = Sitecore.Context.Language.CultureInfo.Name; 

// get the iBuild items 
var results = context.GetQueryable<SearchResultItem>() 
    .Where(i => i["navigation_categorization"].Contains([connectivity services ID]) 
    && i.Language == computedLanguage) 
    .GetResults() 
    .Hits.Select(x => x.Document.GetItem(
)); 
+0

感謝您的答案@dnstommy,但我試圖通過來自外部源的REST API調用,而不是Sitecore本身。正因爲如此,我沒有任何您參考的類,我認爲這些類是Sitecore安裝的內部類。目標是建立一個諸如HTTP GET的調用來「hostSite.com/sitecore/ .......」,它將返回一個包含它們的id和一些與它們相關的信息的項目列表,類似於常規get基於內容位置的id或孩子。 – dmendelsohn

+0

api到sitecore api的情況如何?或者直接調用sql。不建議這樣做,但可以解決您的問題。 –