【发布时间】:2016-08-05 04:54:32
【问题描述】:
我在 SilverStripe 网站上工作并安装了blog module。
我的博客设置了多个类别,例如 新闻、活动、公告、图片库等。
我遇到的问题是我想在首页展示每个类别的最新博文(标题、图片、部分内容)。
我可以使用此解决方案轻松循环博客文章:http://www.silverstripe.org/community/forums/blog-module-forum/show/102585?start=8
/mysite/code/Page.php
class Page_Controller extends ContentController {
public function latestBlog($num = 3) {
return BlogPost::get()
->sort('PublishDate', 'desc')
->limit($num);
}
}
/themes/simple/templates/Page.ss
<ol>
<% loop $latestBlog %>
<li>$Title</li>
<p>$Content</p>
<% end_loop %>
</ol>
但我不知道在按类别过滤时如何循环。例如像这样的逻辑:
return BlogPost::get()
->FILTER('Category', 'News')
->sort('PublishDate', 'desc')
->limit($num);
这个想法是循环 News 并以某种方式对其进行编码,使其在首页上看起来不同,然后循环 Photo Gallery。
我找不到任何有关如何执行此操作的内容。
这样可以吗?
【问题讨论】:
标签: php silverstripe