Module to quickly render portlets of data from a simple template call

Installs: 261

Dependents: 3

Suggesters: 0

Security: 0

Stars: 1

Watchers: 1

Forks: 1

Open Issues: 2


4.0.3 2018-05-01 02:52 UTC

This package is auto-updated.

Last update: 2024-04-27 07:05:59 UTC


Build Status Scrutinizer Code Quality Code Coverage Build Status codecov.io

Latest Stable Version Latest Unstable Version Total Downloads License Monthly Downloads Daily Downloads

Dependency Status Reference Status


  • Adds a convenience template call that allows one to search for N of a certain type of DataObject and then render them with a given template.
  • Forces interfaced access to information about the data object such as title and image.


composer require "weboftalent/portlets:^4"


Interface for Models

For a model to be rendered as a portlet, it must provide the 3 following methods and implement the RenderableAsPortlet interface

public function getPortletTitle();
public function getPortletImage();
public function getPortletCaption();


The model being rendered must implement the RenderableAsPortlet interface mentioned previously. An example call to render portlets is as follows:


The parameters are as follows:

  • The class name, in this case we are looking objects of class Activity
  • Filter, i.e. the WHERE clause of the search. In this case no filter has been applied
  • The sort field, in this case title.
  • The number of items to return, in this case 2
  • The name of the template used to render the portlets, here SmallTitleAndImage

In the template used to render the portlet, the records can be accessed using <control Records> - an example is below.

<ul class="slides">
<% control Records %>
<a href="$Link"><h5>$PortletTitle</h5>
<% control PortletImage %><% control SetWidth(170) %><img src="$URL"/><% end_control %><% end_control %>
<% end_control %>

Silverstripe Version Compatibility

2.4 (tested with 2.4.5+) - stable24 branch 3.0 - stable30 branch