remove_theme_support( string $feature ): bool|void

Allows a theme to de-register its support of a certain feature

Description

Should be called in the theme’s functions.php file. Generally would be used for child themes to override support from the parent theme.

See also

Parameters

$featurestringrequired
The feature being removed. See add_theme_support() for the list of possible values.
More Arguments from add_theme_support( … $feature )The feature being added. Likely core values include:
  • 'admin-bar'
  • 'align-wide'
  • 'automatic-feed-links'
  • 'core-block-patterns'
  • 'custom-background'
  • 'custom-header'
  • 'custom-line-height'
  • 'custom-logo'
  • 'customize-selective-refresh-widgets'
  • 'custom-spacing'
  • 'custom-units'
  • 'dark-editor-style'
  • 'disable-custom-colors'
  • 'disable-custom-font-sizes'
  • 'editor-color-palette'
  • 'editor-gradient-presets'
  • 'editor-font-sizes'
  • 'editor-styles'
  • 'featured-content'
  • 'html5'
  • 'menus'
  • 'post-formats'
  • 'post-thumbnails'
  • 'responsive-embeds'
  • 'starter-content'
  • 'title-tag'
  • 'wp-block-styles'
  • 'widgets'
  • 'widgets-block-editor'

Return

bool|void Whether feature was removed.

Source

function remove_theme_support( $feature ) {
	// Do not remove internal registrations that are not used directly by themes.
	if ( in_array( $feature, array( 'editor-style', 'widgets', 'menus' ), true ) ) {
		return false;
	}

	return _remove_theme_support( $feature );
}

Changelog

VersionDescription
3.0.0Introduced.

User Contributed Notes

  1. Skip to note 2 content

    Removing a Feature In a Child Theme
    In some cases, a Parent Theme may have activated a feature that you do not want to have available in your Child Theme. For instance, if you are using a parent theme that has activated Featured Images for all Pages and Posts, but you’d like to remove the functionality of having Featured Images for Pages in your Child Theme, you could do something like this:

    // in your Child Theme's functions.php    
    
    // Use the after_setup_theme hook with a priority of 11 to load after the
    // parent theme, which will fire on the default priority of 10
    add_action( 'after_setup_theme', 'remove_featured_images_from_child_theme', 11 ); 
    
    function remove_featured_images_from_child_theme() {
    
        // This will remove support for post thumbnails on ALL Post Types
        remove_theme_support( 'post-thumbnails' );
    
        // Add this line in to re-enable support for just Posts
        add_theme_support( 'post-thumbnails', array( 'post' ) );
    }

You must log in before being able to contribute a note or feedback.