SilverStripe:最新的博客文章内容块
SilverStripe: Latest Blog Posts Content Block
我正在使用 SheaDawson 的 blocks module,我正在尝试创建一个 "latest blog posts" 内容块。这是我的数据对象:
<?php
class LatestBlogPosts extends Block {
private static $db = array(
'ContainInGrid' => 'Boolean',
'PostCount' => 'Int'
);
static $defaults = array(
"PostCount" => 2
);
function getCMSFields() {
$fields = parent::getCMSFields();
return $fields;
}
public function LatestPosts() {
$blog = DataObject::get("BlogEntry", "", "Date DESC", "", $this->PostCount);
return $blog;
}
}
页面模板上没有显示任何帖子。它说它找不到任何东西。当我检查数据库时,BlogEntry
table 是空的,即使我有两个帖子已发布。
我该如何解决这个问题?
在最新版本中SilverStripe blog module the blog entry class is named BlogPost
。 BlogEntry
是 class 曾经的样子,但这在 2015 年的某个时候发生了变化。
如果您使用的是最新版本的博客模块,您的博客条目将被创建为 BlogPost
s,并且该数据将在 BlogPost
数据库 table 中。
您的 LatestPosts
函数应如下所示:
public function LatestPosts() {
return BlogPost::get()->sort('Date', 'DESC')->limit($this->PostCount);
}
我正在使用 SheaDawson 的 blocks module,我正在尝试创建一个 "latest blog posts" 内容块。这是我的数据对象:
<?php
class LatestBlogPosts extends Block {
private static $db = array(
'ContainInGrid' => 'Boolean',
'PostCount' => 'Int'
);
static $defaults = array(
"PostCount" => 2
);
function getCMSFields() {
$fields = parent::getCMSFields();
return $fields;
}
public function LatestPosts() {
$blog = DataObject::get("BlogEntry", "", "Date DESC", "", $this->PostCount);
return $blog;
}
}
页面模板上没有显示任何帖子。它说它找不到任何东西。当我检查数据库时,BlogEntry
table 是空的,即使我有两个帖子已发布。
我该如何解决这个问题?
在最新版本中SilverStripe blog module the blog entry class is named BlogPost
。 BlogEntry
是 class 曾经的样子,但这在 2015 年的某个时候发生了变化。
如果您使用的是最新版本的博客模块,您的博客条目将被创建为 BlogPost
s,并且该数据将在 BlogPost
数据库 table 中。
您的 LatestPosts
函数应如下所示:
public function LatestPosts() {
return BlogPost::get()->sort('Date', 'DESC')->limit($this->PostCount);
}