Same name and namespace in other branches
  1. 10 core/includes/theme.inc \theme_get_setting()
  2. 4.7.x includes/theme.inc \theme_get_setting()
  3. 5.x includes/theme.inc \theme_get_setting()
  4. 6.x includes/theme.inc \theme_get_setting()
  5. 7.x includes/theme.inc \theme_get_setting()
  6. 8.9.x core/includes/theme.inc \theme_get_setting()
  7. 9 core/includes/theme.inc \theme_get_setting()

Retrieve a setting for the current theme. This function is designed for use from within themes & engines to determine theme settings made in the admin interface.

Caches values for speed (use $refresh = TRUE to refresh cache)

Parameters

$setting_name: The name of the setting to be retrieved.

$refresh: Whether to reload the cache of settings.

Return value

The value of the requested setting, NULL if the setting does not exist.

4 calls to theme_get_setting()
chameleon_node in themes/chameleon/chameleon.theme
chameleon_page in themes/chameleon/chameleon.theme
xtemplate_node in themes/engines/xtemplate/xtemplate.engine
xtemplate_page in themes/engines/xtemplate/xtemplate.engine

File

includes/theme.inc, line 278
The theme system, which controls the output of Drupal.

Code

function theme_get_setting($setting_name, $refresh = FALSE) {
  global $theme_key;
  static $settings;
  if (empty($settings) || $refresh) {
    $settings = theme_get_settings($theme_key);
    $themes = list_themes();
    $theme_object = $themes[$theme_key];
    if ($settings['mission'] == '') {
      $settings['mission'] = variable_get('site_mission', '');
    }
    if (!$settings['toggle_mission']) {
      $settings['mission'] = '';
    }
    if ($settings['toggle_logo']) {
      if ($settings['default_logo']) {
        $settings['logo'] = dirname($theme_object->filename) . '/logo.png';
      }
      elseif ($settings['logo_path']) {
        $settings['logo'] = $settings['logo_path'];
      }
    }
    if (!$settings['toggle_primary_links']) {
      $settings['primary_links'] = '';
    }
    if (!$settings['toggle_secondary_links']) {
      $settings['secondary_links'] = '';
    }
  }
  return isset($settings[$setting_name]) ? $settings[$setting_name] : NULL;
}