atwx / silverstripe-element-overview
Adds an Element Overview ModelAdmin to SilverStripe CMS, listing all elements with links to their pages.
Package info
github.com/atwx/silverstripe-element-overview
Type:silverstripe-vendormodule
pkg:composer/atwx/silverstripe-element-overview
Requires
README
Adds an Element Overview ModelAdmin to the SilverStripe CMS, listing all Elemental content blocks across all pages in a searchable, filterable table.
Features
- Lists all elements site-wide, sorted by type and title
- Filter by element title (partial match) and element type (dropdown)
- Filter state is persisted in the browser URL
- Links to the frontend page and the CMS backend page for each element
- CSV export with type, title, page name, frontend URL and backend URL
- Compatible with Fluent: only shows elements for the currently active locale
- Works without Fluent — all elements are shown when Fluent is not installed
Requirements
- SilverStripe Framework
^6 - SilverStripe Admin
^3 - DNADesign Silverstripe Elemental
^6
Installation
composer require atwx/silverstripe-element-overview
After installation, run a database build:
vendor/bin/sake db:build --flush
Usage
The module registers itself automatically. After installation, a new Element Overview entry appears in the CMS navigation (icon: layout blocks).
Columns
| Column | Description |
|---|---|
| Type | Element type (e.g. "Accordion", "Text & Image") |
| Element title | The element's title field |
| Page | Link to the frontend page (opens in new tab) |
| Page (Backend) | Link to the page in the CMS editor (opens in new tab) |
Search & Filter
- Element title — partial text search
- Type — dropdown to filter by element class
CSV Export
Click Export to CSV (top left) to download all currently filtered elements as a CSV file. The export includes:
- Type
- Element title
- Page (name)
- Page URL (frontend)
- Page Backend URL (CMS)
Compatibility Note
This module requires league/csv <9.27 due to a deprecation in GridFieldExportButton in SilverStripe Framework. Add the following to your project's composer.json if the export produces errors:
"conflict": { "league/csv": ">=9.27" }