Skip to main content

This site requires you to update your browser. Your browsing experience maybe affected by not having the most up to date version.

We've moved the forum!

Please use forum.silverstripe.org for any new questions (announcement).
The forum archive will stick around, but will be read only.

You can also use our Slack channel or StackOverflow to ask for help.
Check out our community overview for more options to contribute.

Blog Module /

Discuss the Blog Module.

Moderators: martimiz, Sean, Ed, biapar, Willr, Ingo, swaiba

Q: Multiple blogs with latest post on HomePage


Go to End


17 Posts   9350 Views

Avatar
Web Designer Perth

Community Member, 49 Posts

5 July 2009 at 10:05pm

How? Say if I only want the six latest posts?

Avatar
dab

Community Member, 50 Posts

5 July 2009 at 10:21pm

	function getLatestBlogEntries($number=6) {	
		return DataObject::get('BlogEntry', "","Date DESC", false, $number);
	}

Avatar
Nivanka

Community Member, 400 Posts

6 July 2009 at 2:06am

no need of editing anything then, just on the widgets backend put 6 where it asks you how many posts you need to show.

Avatar
Web Designer Perth

Community Member, 49 Posts

6 July 2009 at 2:23pm

Edited: 06/07/2009 2:24pm

Hi Nivanka, I have done that but it's not working. Hence my earlier post in this thread.

I will hard-code and see - thx dab.

Avatar
AlfonsoGrondo

Community Member, 2 Posts

6 July 2009 at 11:13pm

Hi,

I'd like to do the same as the original post in this thread... pull together multiple blogs into a news site (simple site of multiple categories). Wondering how would I set this up.. duplicating BlogHolder as OneByOne mentioned? Would that be the preferred way to manage something like that or simply take advantage of tag cloud and use that as 'categories'? Any advice appreciated.

Thanks

Avatar
Nivanka

Community Member, 400 Posts

29 July 2009 at 1:16am

hi,

I added a new build of the widget at http://open.whynotonline.com/latest-blog-post/

This might solve your problem.

thanks

Avatar
WalterW

Community Member, 18 Posts

13 May 2010 at 3:49am

Edited: 13/05/2010 6:16am

I changed the layout for the latest post widget. I don't like to show the whole post entry, as it can be quite large. Also I delete the html entities like Breakks or Urls or ...

So I show the source code (for LatestForumPostWidget.php) to do this:

<?php
	
	class LatestForumPostWidget extends Widget{

		//The widget info
		static $title = "Newest Posts";
		static $cmsTitle = "Newest Posts";
		static $description = "This widget displays latest forum post on the side bar, you need to install the Forum module to make use of this widget";

		protected static $MaxNrLines=3;
		protected static $MaxNrPosts=3;
		
	/**
	 * Set max number of lines per post to display
	 * 
	 * @param integer $val
	 */
	public static function set_max_nr_lines($val) {
		self::$MaxNrLines = $val;
	}
	/**
	 * Set max number of posts to display
	 * 
	 * @param integer $val
	 */
	public static function set_max_nr_posts($val) {
		self::$MaxNrPosts = $val;
	}


		//Return the latest
		function getPosts(){
			$output=null;
			$posts = DataObject::get("Post", "", "Created DESC", "" , self::$MaxNrPosts);
			// $ThisPost=$posts->First();
			if ($posts->exists()) {
			$output = new DataObjectSet();
			foreach($posts as $ThisPost) {
				$PostLines = "";
				$PostTextCtr=1;
				$PostTextLine = strtok($ThisPost->Content,"\n");
				while ($PostTextLine !== false && $PostTextCtr<=self::$MaxNrLines) {
					$PostLines .= $PostTextLine ;
					if (++$PostTextCtr<=self::$MaxNrLines) { $PostLines .= "<br>"; }
					$PostTextLine = strtok("\n");
				}
				// delete html-Entities
				$PostLines=preg_replace("/\[[a-z\/A-Z0-9]+\]/","",$PostLines);
				$output->push(new ArrayData(array(
				"Link" => $ThisPost->Link(),
				"Title" => $ThisPost->title,
				"Content" => $PostLines . "<a href=\"" . $ThisPost->Link() . "\">  .....</a>"
				)));
			}
			}
			return $output;
		}
	}

?>

Avatar
biapar

Forum Moderator, 435 Posts

24 May 2010 at 8:20pm

Question:

- how can I create multiple blog entry?
- how can I create categories?

Thank you