WordPress Version: 5.5
/**
* Do not use. Removes theme support internally without knowledge of those not used
* by themes directly.
*
* @access private
* @since 3.1.0
* @global array $_wp_theme_features
* @global Custom_Image_Header $custom_image_header
* @global Custom_Background $custom_background
*
* @param string $feature The feature being removed. See add_theme_support() for the list
* of possible values.
* @return bool True if support was removed, false if the feature was not registered.
*/
function _remove_theme_support($feature)
{
global $_wp_theme_features;
switch ($feature) {
case 'custom-header-uploads':
if (!isset($_wp_theme_features['custom-header'])) {
return false;
}
add_theme_support('custom-header', array('uploads' => false));
return;
}
if (!isset($_wp_theme_features[$feature])) {
return false;
}
switch ($feature) {
case 'custom-header':
if (!did_action('wp_loaded')) {
break;
}
$support = get_theme_support('custom-header');
if (isset($support[0]['wp-head-callback'])) {
remove_action('wp_head', $support[0]['wp-head-callback']);
}
if (isset($GLOBALS['custom_image_header'])) {
remove_action('admin_menu', array($GLOBALS['custom_image_header'], 'init'));
unset($GLOBALS['custom_image_header']);
}
break;
case 'custom-background':
if (!did_action('wp_loaded')) {
break;
}
$support = get_theme_support('custom-background');
if (isset($support[0]['wp-head-callback'])) {
remove_action('wp_head', $support[0]['wp-head-callback']);
}
remove_action('admin_menu', array($GLOBALS['custom_background'], 'init'));
unset($GLOBALS['custom_background']);
break;
}
unset($_wp_theme_features[$feature]);
return true;
}