2016-07-08 79 views
2

我正在使用SheaDawson的blocks module,我試圖創建一個「最新的博客文章」內容塊。這是我的數據對象:SilverStripe:最新博客帖子內容區域

<?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表是空的,即使我有兩篇文章發佈。

如何解決此問題?

回答

4

SilverStripe blog module的最新版本中,博客入門級別名爲BlogPostBlogEntry是用什麼類是,但如果您使用的是最新版本的博客模塊您的博客條目會BlogPost s爲單位創造了這個在2015年

某個時候發生變化,該數據將在BlogPost數據庫表。

LatestPosts功能應該是這樣的:

public function LatestPosts() { 
    return BlogPost::get()->sort('Date', 'DESC')->limit($this->PostCount); 
} 
相關問題