wpseek.com
A WordPress-centric search engine for devs and theme authors
_wp_get_color_scheme_menu_icon_styles is private and should not be used in themes or plugins directly.
_wp_get_color_scheme_menu_icon_styles › WordPress Function
Since7.2.0
Deprecatedn/a
› _wp_get_color_scheme_menu_icon_styles ( $color_scheme )
| Access: |
|
| Parameters: |
|
| Returns: |
|
| Defined at: |
|
| Codex: |
Returns the CSS that colors inline SVG admin menu icons with the icon colors of an admin color scheme.
A scheme without icon colors gets CSS that makes the icons follow the text color of the menu links instead. The color scheme picker also passes it to user-profile.js, which applies it when another scheme is selected.Source
function _wp_get_color_scheme_menu_icon_styles( $color_scheme ) {
global $_wp_admin_css_colors;
if ( empty( $_wp_admin_css_colors[ $color_scheme ] ) ) {
return '';
}
// The core schemes have no stylesheet of their own, or one from the core colors directory.
$url = $_wp_admin_css_colors[ $color_scheme ]->url;
if ( ! is_string( $url ) || '' === $url || str_starts_with( $url, admin_url( 'css/colors/' ) ) ) {
return '';
}
$base_selector = '#adminmenu div.wp-menu-image';
$focus_selector = '#adminmenu li:hover div.wp-menu-image,#adminmenu li a:focus div.wp-menu-image,#adminmenu li.opensub div.wp-menu-image';
$current_selector = '#adminmenu li.wp-has-current-submenu div.wp-menu-image,#adminmenu li.wp-has-current-submenu:hover div.wp-menu-image,#adminmenu a.wp-has-current-submenu:hover div.wp-menu-image,#adminmenu a.current:hover div.wp-menu-image,#adminmenu li.current div.wp-menu-image,#adminmenu li.wp-has-current-submenu a:focus div.wp-menu-image,#adminmenu li.wp-has-current-submenu.opensub div.wp-menu-image';
$icon_colors = array_map( 'sanitize_hex_color', wp_parse_args( (array) $_wp_admin_css_colors[ $color_scheme ]->icon_colors, array_fill_keys( array( 'base', 'focus', 'current' ), '' ) ) );
// Without icon colors, the icons follow the text color that the scheme gives to the menu links.
if ( ! $icon_colors['base'] || ! $icon_colors['focus'] || ! $icon_colors['current'] ) {
return "$base_selector,$focus_selector,$current_selector{color:inherit}";
}
return "$base_selector{color:{$icon_colors['base']}}" .
"$focus_selector{color:{$icon_colors['focus']}}" .
"$current_selector{color:{$icon_colors['current']}}";
}