Razor 如何在Orchard中显示博客帖子列表?

Razor 如何在Orchard中显示博客帖子列表?,razor,widget,blogs,orchardcms,Razor,Widget,Blogs,Orchardcms,我想要一个简单的小部件为我的右侧栏,可以显示最近的博客文章列表 除了创建我自己的小部件之外,还有其他简单的方法吗?我在画廊里找了一个,但没找到 有人能给我指出正确的方向吗 编辑:[解决方案] 首先,我添加了最近的博客文章小部件。然后我创建了一个Parts.Blogs.recentBlogPosts.cshtml文件,并将其放在我的主题的Views目录下。以下是文件的内容(取自此处:) @使用Orchard.ContentManagement; @{ IEnumerable博客帖子= Model.

我想要一个简单的小部件为我的右侧栏,可以显示最近的博客文章列表

除了创建我自己的小部件之外,还有其他简单的方法吗?我在画廊里找了一个,但没找到

有人能给我指出正确的方向吗

编辑:[解决方案]

首先,我添加了最近的博客文章小部件。然后我创建了一个Parts.Blogs.recentBlogPosts.cshtml文件,并将其放在我的主题的Views目录下。以下是文件的内容(取自此处:)

@使用Orchard.ContentManagement;
@{
IEnumerable博客帖子=
Model.ContentItems.ContentItems;
}
@if(blogPosts==null | | blogPosts.Count()<1){
@T(“无职位”)

} 否则{
    @foreach(blogPosts中的动态帖子){ 字符串标题=post.title; ContentItem=post.ContentItem;
  • @ItemDisplayLink(标题,项目)
  • }
}
我正在看Orchard 1.2,有一个“最近的博客文章”小部件可供您使用-您只需将其添加到首选的层/区域。

除了编写自己的视图外,还有两种其他方法可以自定义显示的内容

  • 文件。您可以告诉它要为给定的contentType和/或DisplayType(summary或detail)显示哪些字段。您还可以告诉它显示字段的顺序
  • 来自主题机器主题中的示例文件

    <Match ContentType="Blog">
      <Match DisplayType="Summary">
        <Place Parts_Blogs_Blog_Description="Content:before"
             Parts_Blogs_Blog_BlogPostCount="Meta:3"/>
      </Match>
    </Match>
    
    
    
  • 一个快速的方法是使用CSS隐藏你不想要的内容。在发现placement.info之前,我将其用于blogPost元数据

  • 顺便说一句,我不知道你是否熟悉designer tools模块,但它非常宝贵

    当我添加这个小部件时,它会提供完整的博客视图。标题、内容等。我想要一个链接列表,有点像wordpress的工作方式。你应该能够在你的主题中覆盖博客文章列表视图。创建一个名为Views/Orchard.Blogs/Parts.Blogs.RecentBlogPosts.cshtml的新视图,从那里您可以用自己的代码替换当前的
    @Display(Model.ContentItems)
    ——也许可以迭代文章列表,显示标题,并显示文章链接(或内容摘要)。如果您不确定是否要这样做,请在此处发布另一个问题,以便我(或其他人)更容易回答:-)感谢您详细介绍解决方案。很好!我还需要以一种简短的、了解地区的方式显示发布日期,以及文章正文的摘要。(默认的博客文章小部件还可以,但我的客户不喜欢日期格式…)谢谢。
    <Match ContentType="Blog">
      <Match DisplayType="Summary">
        <Place Parts_Blogs_Blog_Description="Content:before"
             Parts_Blogs_Blog_BlogPostCount="Meta:3"/>
      </Match>
    </Match>