function theme_disable

Disables a given list of themes.

Parameters

$theme_list: An array of theme names.

1 call to theme_disable()
system_theme_disable in modules/system/system.admin.inc
Menu callback; Disables a theme.

File

includes/theme.inc, line 1629

Code

function theme_disable($theme_list) {
    // Don't disable the default theme.
    if ($pos = array_search(variable_get('theme_default', 'bartik'), $theme_list) !== FALSE) {
        unset($theme_list[$pos]);
        if (empty($theme_list)) {
            return;
        }
    }
    drupal_clear_css_cache();
    foreach ($theme_list as $key) {
        db_update('system')->fields(array(
            'status' => 0,
        ))
            ->condition('type', 'theme')
            ->condition('name', $key)
            ->execute();
    }
    list_themes(TRUE);
    menu_rebuild();
    drupal_theme_rebuild();
    // Invoke hook_themes_disabled after the themes have been disabled.
    module_invoke_all('themes_disabled', $theme_list);
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.