function ThemeManager::initTheme
Same name in other branches
- 9 core/lib/Drupal/Core/Theme/ThemeManager.php \Drupal\Core\Theme\ThemeManager::initTheme()
- 8.9.x core/lib/Drupal/Core/Theme/ThemeManager.php \Drupal\Core\Theme\ThemeManager::initTheme()
- 10 core/lib/Drupal/Core/Theme/ThemeManager.php \Drupal\Core\Theme\ThemeManager::initTheme()
Initializes the active theme for a given route match.
Parameters
\Drupal\Core\Routing\RouteMatchInterface $route_match: The current route match.
1 call to ThemeManager::initTheme()
- ThemeManager::getActiveTheme in core/
lib/ Drupal/ Core/ Theme/ ThemeManager.php
File
-
core/
lib/ Drupal/ Core/ Theme/ ThemeManager.php, line 405
Class
- ThemeManager
- Provides the default implementation of a theme manager.
Namespace
Drupal\Core\ThemeCode
protected function initTheme(?RouteMatchInterface $route_match = NULL) {
// Determine the active theme for the theme negotiator service. This includes
// the default theme as well as really specific ones like the ajax base theme.
if (!$route_match) {
$route_match = \Drupal::routeMatch();
}
if ($route_match instanceof StackedRouteMatchInterface) {
$route_match = $route_match->getMasterRouteMatch();
}
$theme = $this->themeNegotiator
->determineActiveTheme($route_match);
$this->activeTheme = $this->themeInitialization
->initTheme($theme);
}
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.