protected function ThemeManager::initTheme in Drupal 10
Same name and namespace in other branches
- 8 core/lib/Drupal/Core/Theme/ThemeManager.php \Drupal\Core\Theme\ThemeManager::initTheme()
- 9 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.
File
- core/
lib/ Drupal/ Core/ Theme/ ThemeManager.php, line 382
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);
}