В Drupal 8 есть способ выяснить, какую тему вы сейчас используете в модуле? Мне нужно получить имя программно в коде модуля.
8
Использование менеджера тем - это правильный способ получения информации о вашей теме в Drupal 8.
\Drupal::service('theme.manager')->getActiveTheme()
Общее правило в drupal 8 - поиск службы менеджера (/ handler).
** Примечание: как указал Neograph734 , \Drupal::service('theme.manager')->getActiveTheme()
вернется объект активной темы . Если вы хотите получить имя машины темы, используйте\Drupal::service('theme.manager')->getActiveTheme()->getName()
getName()
. Таким образом, чтобы получить название темы, можно было бы использовать\Drupal::service('theme.manager')->getActiveTheme()->getName();
Это сделает это:
Вы всегда можете использовать drush для изучения доступных конфигов:
а также
дал мне список:
и тогда я мог бы проверить следующее:
а также
чтобы наконец выяснить, что он имеет
default
свойство, которое было то, что вы просили.источник
getActiveTheme()
функция в конечном итоге вернет точно то же самое:$this->configFactory->get('system.theme')->get('default')
administration theme
используйте:theme used in front
неadmistartion theme
использовалась:источник
Я нашел через ниже путь в Drupal 8
источник