Skip to main content

If you are using theme_get_settings, such as:

$value = trim(theme_get_setting('my_setting'));

Then in your code editor you will also be seeing undefined  function 'theme_get_setting'.  This function has been deprecated for some time.

 

Instead, you need to use

Passing the theme.manager and theme.initialization services to theme_handler constructor as optional parameters is deprecated. These parameters are also mandatory.

$theme_handler = \Drupal::service('theme_handler');

Get a setting from 'claro' theme.

$logo = $theme_handler->getThemeSetting('logo.url', 'claro');

Clear the 'claro' theme settings static cache.

$theme_handler->clearThemeSettingCache('claro')

Clear the theme settings static cache for all themes.

$theme_handler->clearThemeSettingCache('theme_get_setting');​​

Or something like

$value = \Drupal::service('theme_handler')->getThemeSetting($my_setting, 'your_theme');
if (!empty($value)) {
    $variables['fishfrdc'][$my_setting] = Xss::filter($value);
}

 

 

 

Previously you would have been using

Get a setting from 'claro' theme.

$logo = theme_get_setting('logo.url', 'claro');

Clear the 'claro' theme settings static cache.

$theme_settings = &drupal_static('theme_get_setting');

unset($theme_settings[$theme_name]);

Clear the theme settings static cache for all themes.

drupal_static_reset('theme_get_setting');

Related articles