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.

DataObjectManager Module

Discuss the DataObjectManager module, and the related ImageGallery module.

Moderators: martimiz, UncleCheese, Sean, biapar, Willr, Ingo, swaiba, simon_w

Showing all images from all albums on one page?


6 Posts   1317 Views


4 June 2009 at 9:11am Community Member, 16 Posts

Hi all,

I am pretty new to SS and have got the ImageGallery set up OK. I need to be able to show all the images in the gallery on the entry page to the gallery and then have the individual albums selectable from a sub menu (which is working fine).

Any ideas how I might do this?




4 June 2009 at 11:31am 4085 Posts

Not sure I get it. So the main gallery view is every image in the gallery, and the album links filter them down?


4 June 2009 at 11:39am Community Member, 16 Posts

Exactly! That is what my client wants.


4 June 2009 at 4:21pm 4085 Posts

Hmm.. Right now you can't do it without extending the class, because all the queries are album dependent. If no current album is found, they return null. I'm wondering if it is worth adding a function that would return all images regardless of the album.

In any event, for now, you can just subclass ImageGalleryPage.php to something like MyImageGalleryPage and create a controller function like:

function AllImages()
return $this->getComponents('GalleryItems');

then create /mysite/templates/Includes/ and do your <% control AllImages %> in there. That's probably the quickest solution.

Post your code if you get stuck.


16 June 2009 at 1:35am Community Member, 16 Posts

Sorry I have no idea where to even start on this :( I am very new to Silverstripe.



16 June 2009 at 6:00am 4085 Posts

I've decided this is probably something that the module should be able to do without any customization. You can now view images without the context of an album.

So, to achieve what you're looking for, first, run an SVN update to get the new code. Then you can create a custom Copy the contents from image_gallery/templates/Includes/ into mysite/templates/Includes/

Add this where you want the images to display:

<ul class="gallery-layout">
<% control GalleryItems %>
      <li style="height:{$Top.ThumbnailSize}px;width:{$Top.ThumbnailSize}px;">
            <a id="ViewLink-$ID" rel="$RelAttr" class="$ClassAttr" title="$Caption" href="$ViewLink"><img src="$ThumbnailURL" alt="$Title"/></a>
<% end_control %>

Worked in my testing.