s_color( $key, $name, $url, $colors = array(), $icons = array() ) {
global $_wp_admin_css_colors;
if ( ! isset( $_wp_admin_css_colors ) ) {
$_wp_admin_css_colors = array();
}
$_wp_admin_css_colors[ $key ] = (object) array(
'name' => $name,
'url' => $url,
'colors' => $colors,
'icon_colors' => $icons,
);
}
/**
* Registers the default admin color schemes.
*
* Registers the initial set of eight color schemes in the Profile section
* of the dashboard which allows for styling the admin menu and toolbar.
*
* @see wp_admin_css_color()
*
* @since 3.0.0
*/
function register_admin_color_schemes() {
$suffix = is_rtl() ? '-rtl' : '';
$suffix .= SCRIPT_DEBUG ? '' : '.min';
wp_admin_css_color(
'modern',
_x( 'Default', 'admin color scheme' ),
admin_url( "css/colors/modern/colors$suffix.css" ),
array( '#1e1e1e', '#3858e9', '#7b90ff' ),
array(
'base' => '#f3f1f1',
'focus' => '#fff',
'current' => '#fff',
)
);
wp_admin_css_color(
'fresh',
_x( 'Fresh', 'admin color scheme' ),
false,
array( '#1d2327', '#2c3338', '#2271b1', '#72aee6' ),
array(
'base' => '#a7aaad',
'focus' => '#72aee6',
'current' => '#fff',
)
);
wp_admin_css_color(
'light',
_x( 'Light', 'admin color scheme' ),
admin_url( "css/colors/light/colors$suffix.css" ),
array( '#e5e5e5', '#6a6a6a', '#c64606', '#007cba' ),
array(
'base' => '#999',
'focus' => '#ccc',
'current' => '#ccc',
)
);
wp_admin_css_color(
'blue',
_x( 'Blue', 'admin color scheme' ),
admin_url( "css/colors/blue/colors$suffix.css" ),
array( '#183751', '#245278', '#437aa8', '#e1a948' ),
array(
'base' => '#e5f8ff',
'focus' => '#fff',
'current' => '#fff',
)
);
wp_admin_css_color(
'midnight',
_x( 'Midnight', 'admin color scheme' ),
admin_url( "css/colors/midnight/colors$suffix.css" ),
array( '#232a2e', '#333c42', '#69a8bb', '#cf4339' ),
array(
'base' => '#f1f2f3',
'focus' => '#fff',
'current' => '#fff',
)
);
wp_admin_css_color(
'sunrise',
_x( 'Sunrise', 'admin color scheme' ),
admin_url( "css/colors/sunrise/colors$suffix.css" ),
array( '#6f2724', '#8a312d', '#ad631e', '#ccaf0b' ),
array(
'base' => '#f3f1f1',
'focus' => '#fff',
'current' => '#fff',
)
);
wp_admin_css_color(
'ectoplasm',
_x( 'Ectoplasm', 'admin color scheme' ),
admin_url( "css/colors/ectoplasm/colors$suffix.css" ),
array( '#392751', '#4a3369', '#646c3e', '#d46f15' ),
array(
'base' => '#ece6f6',
'focus' => '#fff',
'current' => '#fff',
)
);
wp_admin_css_color(
'ocean',
_x( 'Ocean', 'admin color scheme' ),
admin_url( "css/colors/ocean/colors$suffix.css" ),
array( '#2b3f44', '#39535a', '#567958', '#aa9d88' ),
array(
'base' => '#f2fcff',
'focus' => '#fff',
'current' => '#fff',
)
);
wp_admin_css_color(
'coffee',
_x( 'Coffee', 'admin color scheme' ),
admin_url( "css/colors/coffee/colors$suffix.css" ),
array( '#382e27', '#5c4c40', '#916745', '#9ea476' ),
array(
'base' => '#f3f2f1',
'focus' => '#fff',
'current' => '#fff',
)
);
}
/**
* Displays the URL of a WordPress admin CSS file.
*
* @see WP_Styles::_css_href() and its {@see 'style_loader_src'} filter.
*
* @since 2.3.0
*
* @param string $file file relative to wp-admin/ without its ".css" extension.
* @return string
*/
function wp_admin_css_uri( $file = 'wp-admin' ) {
if ( defined( 'WP_INSTALLING' ) ) {
$_file = "./$file.css";
} else {
$_file = admin_url( "$file.css" );
}
$_file = add_query_arg( 'version', get_bloginfo( 'version' ), $_file );
/**
* Filters the URI of a WordPress admin CSS file.
*
* @since 2.3.0
*
* @param string $_file Relative path to the file with query arguments attached.
* @param string $file Relative path to the file, minus its ".css" extension.
*/
return apply_filters( 'wp_admin_css_uri', $_file, $file );
}
/**
* Enqueues or directly prints a stylesheet link to the specified CSS file.
*
* "Intelligently" decides to enqueue or to print the CSS file. If the
* {@see 'wp_print_styles'} action has *not* yet been called, the CSS file will be
* enqueued. If the {@see 'wp_print_styles'} action has been called, the CSS link will
* be printed. Printing may be forced by passing true as the $force_echo
* (second) parameter.
*
* For backward compatibility with WordPress 2.3 calling method: If the $file
* (first) parameter does not correspond to a registered CSS file, we assume
* $file is a file relative to wp-admin/ without its ".css" extension. A
* stylesheet link to that generated URL is printed.
*
* @since 2.3.0
*
* @param string $file Optional. Style handle name or file name (without ".css" extension) relative
* to wp-admin/. Defaults to 'wp-admin'.
* @param bool $force_echo Optional. Force the stylesheet link to be printed rather than enqueued.
*/
function wp_admin_css( $file = 'wp-admin', $force_echo = false ) {
// For backward compatibility.
$handle = str_starts_with( $file, 'css/' ) ? substr( $file, 4 ) : $file;
if ( wp_styles()->query( $handle ) ) {
if ( $force_echo || did_action( 'wp_print_styles' ) ) {
// We already printed the style queue. Print this one immediately.
wp_print_styles( $handle );
} else {
// Add to style queue.
wp_enqueue_style( $handle );
}
return;
}
$stylesheet_link = sprintf(
"\n",
esc_url( wp_admin_css_uri( $file ) )
);
/**
* Filters the stylesheet link to the specified CSS file.
*
* If the site is set to display right-to-left, the RTL stylesheet link
* will be used instead.
*
* @since 2.3.0
* @param string $stylesheet_link HTML link element for the stylesheet.
* @param string $file Style handle name or filename (without ".css" extension)
* relative to wp-admin/. Defaults to 'wp-admin'.
*/
echo apply_filters( 'wp_admin_css', $stylesheet_link, $file );
if ( function_exists( 'is_rtl' ) && is_rtl() ) {
$rtl_stylesheet_link = sprintf(
"\n",
esc_url( wp_admin_css_uri( "$file-rtl" ) )
);
/** This filter is documented in wp-includes/general-template.php */
echo apply_filters( 'wp_admin_css', $rtl_stylesheet_link, "$file-rtl" );
}
}
/**
* Enqueues the default ThickBox js and css.
*
* If any of the settings need to be changed, this can be done with another js
* file similar to media-upload.js. That file should
* require array('thickbox') to ensure it is loaded after.
*
* @since 2.5.0
*/
function add_thickbox() {
wp_enqueue_script( 'thickbox' );
wp_enqueue_style( 'thickbox' );
if ( is_network_admin() ) {
add_action( 'admin_head', '_thickbox_path_admin_subfolder' );
}
}
/**
* Displays the XHTML generator that is generated on the wp_head hook.
*
* See {@see 'wp_head'}.
*
* @since 2.5.0
*/
function wp_generator() {
/**
* Filters the output of the XHTML generator tag.
*
* @since 2.5.0
*
* @param string $generator_type The XHTML generator.
*/
the_generator( apply_filters( 'wp_generator_type', 'xhtml' ) );
}
/**
* Displays the generator XML or Comment for RSS, ATOM, etc.
*
* Returns the correct generator type for the requested output format. Allows
* for a plugin to filter generators overall the {@see 'the_generator'} filter.
*
* @since 2.5.0
*
* @param string $type The type of generator to output - (html|xhtml|atom|rss2|rdf|comment|export).
*/
function the_generator( $type ) {
/**
* Filters the output of the XHTML generator tag, for display.
*
* @since 2.5.0
*
* @param string $generator_type The generator output.
* @param string $type The type of generator to output. Accepts 'html',
* 'xhtml', 'atom', 'rss2', 'rdf', 'comment', 'export'.
*/
echo apply_filters( 'the_generator', get_the_generator( $type ), $type ) . "\n";
}
/**
* Creates the generator XML or Comment for RSS, ATOM, etc.
*
* Returns the correct generator type for the requested output format. Allows
* for a plugin