Provides an Editor UI and Developers API for setting/getting content
Provides an Editor UI and Developer API for managing custom settings, (*2)
Provides an Editor UI and Developers API for setting/getting content that needs to be all over the place but isn't exactly config, and isn't exactly entity stuff., (*3)
Technically you create config keys (eg global
or site-settings
). This key gets linked directly to exactly one bundle in the settings
entity type., (*4)
Developers are free to create bundles/fields in the entity type settings
themselves, and create keys to refer to them., (*5)
On /admin/config/wmsettings
one can add settings. A setting effectively links a machine name to a specific entity id. The entity gets autocreated., (*6)
You can also add configs by directly writing config files I suppose, for the brave that feel up to it. Just follow the wmsettings.schema.yml for that., (*7)
The administrative interface for editors is at admin/content/wmsettings
. Note that:, (*8)
administer wmsettings content
permission + edit permissions for the settings
entity type will be required to edit the settingsThere are several ways to access the entity for a key., (*9)
$entity = Drupal::service('wmsettings.settings') ->read('my_key');
wmsettings_get('my_key');
Returns a quick flattened array of all values in a setting, given field names and field types. Not a lot of field types are supported now., (*10)
$variables['copy'] = Drupal::service('wmsettings.settings') ->fill($global_copy, ['field_name' => 'textarea']);
Drupal requires at least two tasks to show them, so for the sake of completeness this example loads two tasks too:, (*11)
wmcustom.home_controller_home.home: title: 'View' route_name: wmcustom.home_controller_home base_route: wmcustom.home_controller_home wmcustom.home_controller_home.edit: title: 'Edit' route_name: wmsettings.settings.redirect route_parameters: key: 'homepage' anchor: 'edit-group-hero-image' destination: 'wmcustom.home_controller_home' base_route: wmcustom.home_controller_home
All notable changes to this project will be documented in the CHANGELOG file., (*12)
If you discover any security-related issues, please email security@wieni.be instead of using the issue tracker., (*13)
Distributed under the MIT License. See the LICENSE file for more information., (*14)