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.

Archive /

Our old forums are still available as a read-only archive.

Moderators: martimiz, Sean, biapar, Willr, Ingo

silverstriping a site with random pictures

Go to End

22 Posts   9107 Views


Forum Moderator, 214 Posts

21 May 2007 at 4:22pm

Hi Folk

have a look at I would like SilverStripe this. It should be pretty straight forward (although I am a complete novice), but I would like to know how to do the images. I can easily do this in PHP (as you can see), but how would i go about it in Silverstripe (just tell me the general area I should be looking at and how to work it). Basically my question is: I have a php file, how can I silverstripe it?


Forum Moderator, 922 Posts

21 May 2007 at 6:14pm

Edited: 21/05/2007 6:26pm

This tutorial here is what you'll be needing:

It explains how to create image uploaders for pages within the CMS. More specifically, it's the 'Adding a staff section' portion of the tutorial you'll be most interested in.

If you're looking to get a random image instead of a fixed one per page, then you could add the images to a directory inside assets/banners or similar (in the same directory level as sapphire and cms), then create a function as you would normally in any PHP implementation to fetch this directory's contents using scandir or similar, then shuffle the array around.

The banners directory inside assets can be maintained by the CMS using the Files & Images section. The SilverStripe admin can upload the image files directly into the banner directory itself which gets added to the shuffle.

If you haven't already done so I'd recommend running through the tutorials to see how SilverStripe works. :-)



Forum Moderator, 214 Posts

22 May 2007 at 9:48am

Hi Sean

Thanks a million

That is plenty to go by. I had a quick look at the tutorials and I will look at them in more depth now.

Thanks again



Community Member, 56 Posts

18 June 2007 at 9:06am

I had same problem and my tip is, in Page_Controller

public function RandomImage( $strLeftDirName )
if ( !is_string( $strLeftDirName ) )
return false;
$left_dir = DataObject::get_one("Folder", "Name = \"$strLeftDirName\"");
$randImg = ( $left_dir->ID ) ? DataObject::get_one("Image", "ParentID = $left_dir->ID", true, "RAND()" ) : false;
return $randImg->Filename;

And in template $RandomImage(page_left) where page_left is directory name where I have proper images.
Works fine and is very flexible


Community Member, 1 Post

5 June 2008 at 3:03pm

That function works great, Thanx


Community Member, 89 Posts

7 August 2008 at 2:56am

can you tell me, to implement random Image in sidebar from gallery,
the function in mysite\code\Page.php and the call in the

can you help me thanks!



Community Member, 89 Posts

15 August 2008 at 11:07pm

Can you help me where i must do these?????

In the or in templates\ and must i scribe

<image src="<?php $RandomImage(gallery); ?>" /> these way or these
<image src="<?php $RandomImage('gallery'); ?>" /> or these
<?php $RandomImage(gallery); ?>

Thanks for help



Community Member, 787 Posts

16 August 2008 at 1:21am


Make sure to thoroughly go through the tutorials. The SS templating system does not work PHP code. You'd have to create a function in your page which returns the list of random images (or single image) ... Then you can call it by implementing a <% control %> in your template.

Go to Top