public function GroupMenuBlock::getCacheContexts in Group Content Menu 8
The cache contexts associated with this object.
These identify a specific variation/representation of the object.
Cache contexts are tokens: placeholders that are converted to cache keys by the @cache_contexts_manager service. The replacement value depends on the request context (the current URL, language, and so on). They're converted before storing an object in cache.
Return value
string[] An array of cache context tokens, used to generate a cache ID.
Overrides ContextAwarePluginBase::getCacheContexts
See also
\Drupal\Core\Cache\Context\CacheContextsManager::convertTokensToKeys()
File
- src/
Plugin/ Block/ GroupMenuBlock.php, line 241
Class
- GroupMenuBlock
- Provides a generic Menu block.
Namespace
Drupal\group_content_menu\Plugin\BlockCode
public function getCacheContexts() {
$tags = [
// We use MenuLinkTreeInterface::getCurrentRouteMenuTreeParameters() to
// generate menu tree parameters, and those take the active menu trail
// into account. Therefore, we must vary the rendered menu by the active
// trail of the rendered menu. Additional cache contexts, e.g. those that
// determine link text or accessibility of a menu, will be bubbled
// automatically.
'route.menu_active_trails:group-menu-' . $this
->getDerivativeId(),
// We also vary by the active group as found by RouteGroupCacheContext.
'route.group',
];
return Cache::mergeContexts(parent::getCacheContexts(), $tags);
}