2014-02-19 20 views
0

我試圖顯示我的分類列表與其中的內容項目的計數。顯示TaxonomyItem形態中的分類項目中的內容項目數

但我找不出如何去做。 我試圖修改TaxonomyItem.cshtml

​​

@ terms.Count()

但是這給我唯一的分類項目總數,而不是每個分類裏面的內容項目的數量。

我該如何顯示?

回答

1

EDIT

每個術語具有ContentItems的計數,是TermPart.Count的計數值。每次使用TermsPartHandler術語標記內容項目時,都會刷新計數。

TaxonomyItem模板使用DisplayChildren,對於每個Term它將呈現模板TaxonomyItemLink。

@* 
    This shape is displayed for a TermPart when in a Taxonomy details page. 

    Alternates: 
    - TaxonomyItemLink__[HtmlClassifiedTaxonomyName] 
    - TaxonomyItemLink__[HtmlClassifiedTaxonomyName]__[HtmlClassifiedTermName] 
*@ 
@using Orchard.Taxonomies.Models 
@{ 
    TermPart part = Model.ContentPart; 
} 

<span> This is the number of content items with this Term @part.Count </span> 

@Html.ItemDisplayLink(part) 

這是該術語項目的計數,而不是分類標準。

+0

它真的很複雜嗎?對於expample,您可以在導航中創建分類鏈接項目,並且有一個選項可以顯示分類的內容項目的計數......它在那裏如何工作? – k0ni

+0

我編輯了我的問題。 – mberacochea

+0

這正是我所期待的!謝謝 – k0ni

0

所以每個學期裏面你還有物品?你能分享這個結構嗎?

terms.Select(item => new { 
          Id = item.TaxonomyId, 
          Count = item.ContentItem.Parts.Count() 
         }); 
+0

我的意思是內容項(在我的例子產品)有分類項目。 我想顯示它像徽章示例這裏: http://getbootstrap.com/components/#list-group – k0ni

+0

好吧,所以每個項目(Orchard.Taxonomies.Models.TermPart)包含產品列表? –

+0

是的,每個分類都有一些產品 – k0ni

1

只需從TaxonomyItemLink.cshtml

解決分類服務
var _taxonomyService = WorkContext.Resolve<Orchard.Taxonomies.Services.ITaxonomyService>(); 

然後從一個分類的每個方面只是算ContentItems

@{ 
    var NumberOfContentItems = _taxonomyService.GetContentItems(part).Count(); 

}