我正试图在Orchard中重现this layout。到目前为止,我已经通过在我的博客帖子详细信息(Content-BlogPost.Detail.cshtml
)中使用备用文件来解决大部分问题。问题是我创建的布局看起来像这样:
我的第一个问题是,这种布局是否有意义?有没有更好的方法来完成这个结果(也就是说,使档案显示与内容一致)?
其次,有没有办法从备用内部渲染区域(或小部件)?我尝试了@Display(Model.Archives)
,其中Archives
是我的区域的名称,但显然博客详情模型没有定义Archives属性。我还考虑使用类似
@Display(New.Parts_Blogs_BlogArchives(new { Blog: blog, Archives: ???})
但我不知道如何填充第二个论点。
在Orchard中进行此布局的正确方法是什么?
答案 0 :(得分:7)
此布局的主要问题是 Archives 区域被放置在博客帖子的标记内。这使事情变得更难,但并非不可能。
解决方案是将整个布局区域渲染到备用区域内,就像你说的那样。您可以显示每个形状的主要顶级布局区域,如下所示:@Display(Layout.Archives)
。 Layout
是一个属性,可让您访问主要的布局形状。
我会这样做:
Layout.cshtml
文件中呈现它。此区域将严格用于博客文章目的(您也可以给它一个不同的名称来注意这一点)。Display(Layout.Archives)
。这将使整个区域内部呈现博客文章标记。现在,每次呈现任何博客帖子时,它都会呈现档案小部件。