我有一个分类术语,用于在我的网站(产品,博客帖子等)中显示许多相关的内容类型。
我创建了一个Alternate来显示Term,但ContentItems集合包含多种内容类型(Blog Posts,Products等)。
这意味着使用Term_Part形状的所有项目都在同一区域中呈现。链接的博客帖子需要显示在与我链接的产品完全不同的区域中。
目前我正在迭代ContentItems集合并对ContentType进行过滤,但是是否可以使用Placement.info在多个区域中显示部件?
或者更好的是,控制ContentItems集合中的哪些ContentTypes应显示在哪个区域?
对于冗长的问题感到抱歉 - 请询问是否需要进一步解释
答案 0 :(得分:0)
您应该可以对要放置的每种内容类型使用类似的内容:
<Match ContentType="BlogPost">
<Match Path="/MyTaxonomy/*">
<Match DisplayType="Summary">
<Place Parts_Title_Summary="/RelatedBlogs:1"/>
</Match>
</Match>
</Match>
注意/
,这意味着它被放置在全局区域(Layout.cshtml)中。在该文件中添加:
@if (Model.RelatedBlogs != null)
{
@Zone(Model.RelatedBlogs)
}
这将在ContentItems集合中留下<li>
。我的工作是创建TermPart- [MyTaxonomy] Term.cshtml并将其留空,但这只有在您不留下任何内容项时才有效。
作为一个注释,我添加了匹配路径而没有测试它,所以希望这是有效的。在添加匹配路径之前,我遇到了一个问题,即每当显示博客摘要时都会将博客标题分派到该区域。