overview_field
Synopsis
Overview
Provides a custom field to add different predefined overviews.
This can be used to add views / blocks / ...
Usage
Add an option to the dropdown list:
/**
* Implements hook_overview_field_options_alter().
*
* Add an option to the overview field.
*/
function overview_field_example_overview_field_options_alter(&$options) {
$options['recent_content'] = t('Show a list of the recent content on the site');
$options['example_block'] = t('Loads a block');
}
Load the output for the previously declared option.
/**
* Implements hook_overview_field_output_alter().
*/
function overview_field_example_overview_field_output_alter($key, &$output) {
if ($key == 'recent_content') {
$output = overview_field_load_view('content_recent', 'block_1');
}
if ($key == 'example_block') {
$block_manager = \Drupal::service('plugin.manager.block');
$config = [];
$plugin_block = $block_manager->createInstance('block_name', $config);
$output = $plugin_block->build();
}
}
Requirements
You need to know how to create a custom module.
Recommended modules
Paragraphs to add an overview field paragraph with the overview field.
Roadmap
- Add more tests to the module.
- Add extra options with Plugin derivatives instead of alters.
Known problems
/
Credits
Dropsolid for development time.
Help wanted!
- Help is always wanted by using and testing the module and reporting bugs.
Similar projects and how they are different
* Block field
The block field module allows you to add blocks to fields as well but through the interface.
Advantage of adding the options through code, is that you can add anything, from a simple view to some custom coding you did.
The block field module allows the content editor also to choose how many items are shown on an overview and in what format, while this is not possible with the overview field module. For our policy, this is an advantage as well.
If you encounter more similar projects, feel free to create an issue.
Dependencies
- Field
Restrictions
/