public function ContextHandler::filterPluginDefinitionsByContexts in Zircon Profile 8
Same name and namespace in other branches
- 8.0 core/lib/Drupal/Core/Plugin/Context/ContextHandler.php \Drupal\Core\Plugin\Context\ContextHandler::filterPluginDefinitionsByContexts()
Determines plugins whose constraints are satisfied by a set of contexts.
@todo Use context definition objects after https://www.drupal.org/node/2281635.
Parameters
\Drupal\Component\Plugin\Context\ContextInterface[] $contexts: An array of contexts.
array $definitions .: An array of plugin definitions.
Return value
array An array of plugin definitions.
Overrides ContextHandlerInterface::filterPluginDefinitionsByContexts
File
- core/
lib/ Drupal/ Core/ Plugin/ Context/ ContextHandler.php, line 22 - Contains \Drupal\Core\Plugin\Context\ContextHandler.
Class
- ContextHandler
- Provides methods to handle sets of contexts.
Namespace
Drupal\Core\Plugin\ContextCode
public function filterPluginDefinitionsByContexts(array $contexts, array $definitions) {
return array_filter($definitions, function ($plugin_definition) use ($contexts) {
// If this plugin doesn't need any context, it is available to use.
if (!isset($plugin_definition['context'])) {
return TRUE;
}
// Check the set of contexts against the requirements.
return $this
->checkRequirements($contexts, $plugin_definition['context']);
});
}