webfox / silverstripe-global-content
Silverstripe SiteConfig like interface for global content that content-authors can access
Installs: 4 370
Dependents: 0
Suggesters: 0
Security: 0
Stars: 3
Watchers: 3
Forks: 3
Open Issues: 0
Type:silverstripe-module
pkg:composer/webfox/silverstripe-global-content
Requires
- php: >=5.4
- silverstripe/cms: ~3.2
README
Installation
This module only supports installation via composer.
Run the following to add this module as a requirement and install it via composer.
composer require "webfox/silverstripe-global-content"
then browse to /dev/build?flush=all
Requirements
- SilverStripe 3.2+
- PHP 5.4+
Module Overview
This module adds a convenient SiteConfig like interface for managing global content.
Useful for when you want global content but don't want to give content-authors access to SiteConfig
Module Usage
Too add additional fields:
- Create a
DataExtensionthat gets applied toGlobalContent - The extension requires an
updateCMSFields(FieldList $fields)method and any standardDataExtensionproperties
class GlobalContentExtension extends DataExtension { protected static $db = [ 'MyFieldName' => 'Varchar' ]; public function updateCMSFields(FieldList $fields) { $fields->addFieldToTab( 'Root.Main', TextField::create('MyFieldName', 'My field name') ); } }
The use with permissions:
- Grant the user/role/group the
Access to 'Global Content' sectionpermission
To use in templates:
$GlobalContent.MyFieldName<% with $GlobalContent %> {$MyFieldName} <% end_with %>$GlobalContent('MyFieldName')
To use in PHP:
GlobalContent::inst()->MyFieldName
To alter the edit form directly:
- Create a new
LeftAndMainExtensionthat gets applied toGlobalContentAdmin - The extension can use the
updateEditForm($form)method to update the form before data is loaded. - The extension can use the
updateEditFormData($form)method to update the form after data is loaded.