Frontend orderable paginated lists

1.0.1 2016-03-22 00:08 UTC

This package is auto-updated.

Last update: 2024-05-29 04:21:31 UTC



  • Andre Lohmann (Nickname: andrelohmann)


Silverstripe 3.2.x


This Module provides a nice paradigm to build orderable collections on the frontend The orderable list will be paginated and ajaxified (


create an OrderablePaginatedList in your controller action and add an ajax statement

class MyController extends Controller {

	public function orderableobjects(){
        $List = MyOrderableObject::get()->sort('Sort');
        $MyOrderableObjects = new OrderablePaginatedList($List, $this->request);
        // if the sortable list is a many many relation
        // $MyOrderableObjects->setOwner($OwnerObject)->setManyMany('NAME_OF_MANY_MANY_RELATION');
		if($this->request->isAjax()) {
			return $this->customise(array(
                "Objects" => $MyOrderableObjects->process(), // process the ordering after OrderablePaginatedList has all information it needs (pageLength, SortField, Owner, ManyManyRelation)
				"URL" => $this->request->getURL(true) // add this for BackURL parameter
		return $this->customise(new ArrayData(array(
			"Title" => "My Orderable Objects",
			"Objects" => $MyOrderableObjects,
			"URL" => $this->request->getURL(true) // add this for BackURL parameter
			array('Page_orderableobjects', $this->stat('template_main'), $this->stat('template'))

use templates/Layout/ and templates/Includes/ as base templates to build your own orderable paginated lists


This repository uses the git flow paradigm. After each release cycle, do not forget to push tags, master and develop to the remote origin

git push --tags
git push origin develop
git push origin master