micschk/silverstripe-gridfieldpages

There is no license information available for the latest version (2.0.1) of this package.

Base Page & Holder classes for managing SiteTree items in a Gridfield instead of via SiteTree

Installs: 2 358

Dependents: 2

Suggesters: 0

Security: 0

Stars: 5

Watchers: 3

Forks: 2

Open Issues: 5

Type:silverstripe-vendormodule

2.0.1 2019-12-09 17:02 UTC

This package is auto-updated.

Last update: 2024-10-10 03:47:28 UTC


README

This module tackles the issue of a cluttered SiteTree by managing pages from a gridfield. It can easily handle thousands of subpages (production-tested with 65.000 pages under one parent).

This module is meant as base classes, it can be used on its own but usually you will want to subclass in order to add filtering/sorting, etc. An example module subclassing this module is Newsgrid (filterable newsitems managed from a gridfield).

Features

  • GridFieldPages extend SiteTree so no Page functionality is lost by using DataObjects.
  • Custom GridField components for quickly adding new pages.
  • Hides sub pages from the sitetree (via excludechildren).
  • Drag 'n drop sorting of pages (optional) (loop over $SortedChildren in templates).

Requirements

These will get auto-installed when using composer:

Optional, for drag & drop sorting (suggested, not auto-installed by composer):

Installation

composer require micschk/silverstripe-gridfieldpages dev-master

Optional: Drag & Drop Sorting

Drag and drop sorting is supported but not active by default, as often you will want to sort by other criteria, eg. Date or some other field. To activate drag & drop sorting, add to config.yml:

GridFieldPageHolder:
  apply_sortable_gridfield: true

Screenshots

Easily manage and add new pages through a GridField.

Edit pages in the regular editform, including settings, history & versioning.

Recommended

Manage newsitems from a gridfield, with embargo & expire (auto-publishing) functionality