X-Git-Url: https://scripts.mit.edu/gitweb/autoinstalls/wordpress.git/blobdiff_plain/5aa86a9053fb0fa15846bb60aac2fb8fdfff524a..2329f698283944696a7076258cf816545970bb47:/wp-admin/admin-header.php diff --git a/wp-admin/admin-header.php b/wp-admin/admin-header.php index a34a51b8..c9d49d2b 100644 --- a/wp-admin/admin-header.php +++ b/wp-admin/admin-header.php @@ -8,11 +8,11 @@ @header('Content-Type: ' . get_option('html_type') . '; charset=' . get_option('blog_charset')); if ( ! defined( 'WP_ADMIN' ) ) - require_once( './admin.php' ); + require_once( dirname( __FILE__ ) . '/admin.php' ); // In case admin-header.php is included in a function. -global $title, $hook_suffix, $current_screen, $wp_locale, $pagenow, $wp_version, $is_iphone, - $current_site, $update_title, $total_update_count, $parent_file; +global $title, $hook_suffix, $current_screen, $wp_locale, $pagenow, $wp_version, + $update_title, $total_update_count, $parent_file; // Catch plugins that include admin-header.php before admin.php completes. if ( empty( $current_screen ) ) @@ -22,9 +22,9 @@ get_admin_page_title(); $title = esc_html( strip_tags( $title ) ); if ( is_network_admin() ) - $admin_title = __( 'Network Admin' ); + $admin_title = sprintf( __( 'Network Admin: %s' ), esc_html( get_current_site()->site_name ) ); elseif ( is_user_admin() ) - $admin_title = __( 'Global Dashboard' ); + $admin_title = sprintf( __( 'Global Dashboard: %s' ), esc_html( get_current_site()->site_name ) ); else $admin_title = get_bloginfo( 'name' ); @@ -33,6 +33,14 @@ if ( $admin_title == $title ) else $admin_title = sprintf( __( '%1$s ‹ %2$s — WordPress' ), $title, $admin_title ); +/** + * Filter the content for an admin page. + * + * @since 3.1.0 + * + * @param string $admin_title The page title, with extra context added. + * @param string $title The original page title. + */ $admin_title = apply_filters( 'admin_title', $admin_title, $title ); wp_user_settings(); @@ -45,17 +53,13 @@ _wp_admin_html_begin(); wp_enqueue_style( 'colors' ); wp_enqueue_style( 'ie' ); wp_enqueue_script('utils'); +wp_enqueue_script( 'svg-painter' ); $admin_body_class = preg_replace('/[^a-z0-9_-]+/i', '-', $hook_suffix); ?> <script type="text/javascript"> addLoadEvent = function(func){if(typeof jQuery!="undefined")jQuery(document).ready(func);else if(typeof wpOnload!='function'){wpOnload=func;}else{var oldonload=wpOnload;wpOnload=function(){oldonload();func();}}}; -var userSettings = { - 'url': '<?php echo SITECOOKIEPATH; ?>', - 'uid': '<?php if ( ! isset($current_user) ) $current_user = wp_get_current_user(); echo $current_user->ID; ?>', - 'time':'<?php echo time() ?>' - }, - ajaxurl = '<?php echo admin_url('admin-ajax.php'); ?>', +var ajaxurl = '<?php echo admin_url( 'admin-ajax.php', 'relative' ); ?>', pagenow = '<?php echo $current_screen->id; ?>', typenow = '<?php echo $current_screen->post_type; ?>', adminpage = '<?php echo $admin_body_class; ?>', @@ -63,42 +67,133 @@ var userSettings = { decimalPoint = '<?php echo addslashes( $wp_locale->number_format['decimal_point'] ); ?>', isRtl = <?php echo (int) is_rtl(); ?>; </script> +<meta name="viewport" content="width=device-width,initial-scale=1.0"> <?php -do_action('admin_enqueue_scripts', $hook_suffix); -do_action("admin_print_styles-$hook_suffix"); -do_action('admin_print_styles'); -do_action("admin_print_scripts-$hook_suffix"); -do_action('admin_print_scripts'); -do_action("admin_head-$hook_suffix"); -do_action('admin_head'); +/** + * Enqueue scripts for all admin pages. + * + * @since 2.8.0 + * + * @param string $hook_suffix The current admin page. + */ +do_action( 'admin_enqueue_scripts', $hook_suffix ); + +/** + * Fires when styles are printed for a specific admin page based on $hook_suffix. + * + * @since 2.6.0 + */ +do_action( "admin_print_styles-$hook_suffix" ); + +/** + * Fires when styles are printed for all admin pages. + * + * @since 2.6.0 + */ +do_action( 'admin_print_styles' ); + +/** + * Fires when scripts are printed for a specific admin page based on $hook_suffix. + * + * @since 2.1.0 + */ +do_action( "admin_print_scripts-$hook_suffix" ); + +/** + * Fires when scripts are printed for all admin pages. + * + * @since 2.1.0 + */ +do_action( 'admin_print_scripts' ); + +/** + * Fires in <head> for a specific admin page based on $hook_suffix. + * + * @since 2.1.0 + */ +do_action( "admin_head-$hook_suffix" ); + +/** + * Fires in <head> for all admin pages. + * + * @since 2.1.0 + */ +do_action( 'admin_head' ); if ( get_user_setting('mfold') == 'f' ) $admin_body_class .= ' folded'; +if ( !get_user_setting('unfold') ) + $admin_body_class .= ' auto-fold'; + if ( is_admin_bar_showing() ) $admin_body_class .= ' admin-bar'; if ( is_rtl() ) $admin_body_class .= ' rtl'; +if ( $current_screen->post_type ) + $admin_body_class .= ' post-type-' . $current_screen->post_type; + +if ( $current_screen->taxonomy ) + $admin_body_class .= ' taxonomy-' . $current_screen->taxonomy; + $admin_body_class .= ' branch-' . str_replace( array( '.', ',' ), '-', floatval( $wp_version ) ); $admin_body_class .= ' version-' . str_replace( '.', '-', preg_replace( '/^([.0-9]+).*/', '$1', $wp_version ) ); $admin_body_class .= ' admin-color-' . sanitize_html_class( get_user_option( 'admin_color' ), 'fresh' ); +$admin_body_class .= ' locale-' . sanitize_html_class( strtolower( str_replace( '_', '-', get_locale() ) ) ); + +if ( wp_is_mobile() ) + $admin_body_class .= ' mobile'; + +if ( is_multisite() ) + $admin_body_class .= ' multisite'; + +if ( is_network_admin() ) + $admin_body_class .= ' network-admin'; -if ( $is_iphone ) { ?> -<style type="text/css">.row-actions{visibility:visible;}</style> -<?php } ?> +$admin_body_class .= ' no-customize-support no-svg'; + +?> </head> -<body class="wp-admin no-js <?php echo apply_filters( 'admin_body_class', '' ) . " $admin_body_class"; ?>"> -<script type="text/javascript">document.body.className = document.body.className.replace('no-js','js');</script> +<?php +/** + * Filter the admin <body> CSS classes. + * + * This filter differs from the post_class or body_class filters in two important ways: + * 1. $classes is a space-separated string of class names instead of an array. + * 2. Not all core admin classes are filterable, notably: wp-admin, wp-core-ui, and no-js cannot be removed. + * + * @since 2.3.0 + * + * @param string $classes Space-separated string of CSS classes. + */ +?> +<body class="wp-admin wp-core-ui no-js <?php echo apply_filters( 'admin_body_class', '' ) . " $admin_body_class"; ?>"> +<script type="text/javascript"> + document.body.className = document.body.className.replace('no-js','js'); +</script> + +<?php +// Make sure the customize body classes are correct as early as possible. +if ( current_user_can( 'customize' ) ) { + wp_customize_support_script(); +} +?> <div id="wpwrap"> +<a tabindex="1" href="#wpbody-content" class="screen-reader-shortcut"><?php _e('Skip to main content'); ?></a> <?php require(ABSPATH . 'wp-admin/menu-header.php'); ?> <div id="wpcontent"> <?php -do_action('in_admin_header'); +/** + * Fires at the beginning of the content section in an admin page. + * + * @since 3.0.0 + */ +do_action( 'in_admin_header' ); ?> <div id="wpbody"> @@ -109,19 +204,40 @@ $current_screen->set_parentage( $parent_file ); ?> -<div id="wpbody-content"> +<div id="wpbody-content" aria-label="<?php esc_attr_e('Main content'); ?>" tabindex="0"> <?php $current_screen->render_screen_meta(); -if ( is_network_admin() ) - do_action('network_admin_notices'); -elseif ( is_user_admin() ) - do_action('user_admin_notices'); -else - do_action('admin_notices'); +if ( is_network_admin() ) { + /** + * Print network admin screen notices. + * + * @since 3.1.0 + */ + do_action( 'network_admin_notices' ); +} elseif ( is_user_admin() ) { + /** + * Print user admin screen notices. + * + * @since 3.1.0 + */ + do_action( 'user_admin_notices' ); +} else { + /** + * Print admin screen notices. + * + * @since 3.1.0 + */ + do_action( 'admin_notices' ); +} -do_action('all_admin_notices'); +/** + * Print generic admin screen notices. + * + * @since 3.1.0 + */ +do_action( 'all_admin_notices' ); if ( $parent_file == 'options-general.php' ) require(ABSPATH . 'wp-admin/options-head.php');