Ticket #32924: 32924.diff
File 32924.diff, 6.5 KB (added by , 8 years ago) |
---|
-
src/wp-includes/admin-bar.php
319 319 } 320 320 321 321 /** 322 * Add the "Customize" link. 323 * 324 * @since 4.3.0 325 * 326 * @param WP_Admin_Bar $wp_admin_bar 327 */ 328 function wp_admin_bar_customize_menu( $wp_admin_bar ) { 329 // Don't show for users who can't access the customizer. 330 if ( ! current_user_can( 'customize' ) ) { 331 return; 332 } 333 334 $current_url = ( is_ssl() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']; 335 $customize_url = add_query_arg( 'url', urlencode( $current_url ), wp_customize_url() ); 336 337 $wp_admin_bar->add_menu( array( 338 'id' => 'customize', 339 'title' => __('Customize'), 340 'href' => $customize_url, 341 'meta' => array( 342 'class' => 'hide-if-no-customize', 343 ), 344 ) ); 345 add_action( 'wp_before_admin_bar_render', 'wp_customize_support_script' ); 346 } 347 348 /** 322 349 * Add the "My Sites/[Site Name]" menu and all submenus. 323 350 * 324 351 * @since 3.1.0 … … 664 691 function wp_admin_bar_appearance_menu( $wp_admin_bar ) { 665 692 $wp_admin_bar->add_group( array( 'parent' => 'site-name', 'id' => 'appearance' ) ); 666 693 667 $current_url = ( is_ssl() ? 'https://' : 'http://' ) . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];668 $customize_url = add_query_arg( 'url', urlencode( $current_url ), wp_customize_url() );669 670 694 if ( current_user_can( 'switch_themes' ) ) { 671 695 $wp_admin_bar->add_menu( array( 672 696 'parent' => 'appearance', 673 697 'id' => 'themes', 674 698 'title' => __( 'Themes' ), 675 699 'href' => admin_url( 'themes.php' ), 676 'meta' => array(677 'class' => 'hide-if-customize',678 ),679 700 ) ); 680 681 if ( current_user_can( 'customize' ) ) {682 $wp_admin_bar->add_menu( array(683 'parent' => 'appearance',684 'id' => 'customize-themes',685 'title' => __( 'Themes' ),686 'href' => add_query_arg( urlencode( 'autofocus[section]' ), 'themes', $customize_url ), // urlencode() needed due to #16859687 'meta' => array(688 'class' => 'hide-if-no-customize',689 ),690 ) );691 }692 701 } 693 702 694 if ( current_user_can( 'customize' ) ) {695 $wp_admin_bar->add_menu( array(696 'parent' => 'appearance',697 'id' => 'customize',698 'title' => __('Customize'),699 'href' => $customize_url,700 'meta' => array(701 'class' => 'hide-if-no-customize',702 ),703 ) );704 add_action( 'wp_before_admin_bar_render', 'wp_customize_support_script' );705 }706 707 703 if ( ! current_user_can( 'edit_theme_options' ) ) { 708 704 return; 709 705 } … … 714 710 'id' => 'widgets', 715 711 'title' => __( 'Widgets' ), 716 712 'href' => admin_url( 'widgets.php' ), 717 'meta' => array(718 'class' => 'hide-if-customize',719 ),720 713 ) ); 721 722 if ( current_user_can( 'customize' ) ) {723 $wp_admin_bar->add_menu( array(724 'parent' => 'appearance',725 'id' => 'customize-widgets',726 'title' => __( 'Widgets' ),727 'href' => add_query_arg( urlencode( 'autofocus[panel]' ), 'widgets', $customize_url ), // urlencode() needed due to #16859728 'meta' => array(729 'class' => 'hide-if-no-customize',730 ),731 ) );732 }733 714 } 734 715 735 716 if ( current_theme_supports( 'menus' ) || current_theme_supports( 'widgets' ) ) … … 745 726 'class' => 'hide-if-customize', 746 727 ), 747 728 ) ); 748 749 if ( current_user_can( 'customize' ) ) {750 $wp_admin_bar->add_menu( array(751 'parent' => 'appearance',752 'id' => 'customize-background',753 'title' => __( 'Background' ),754 'href' => add_query_arg( urlencode( 'autofocus[control]' ), 'background_image', $customize_url ), // urlencode() needed due to #16859755 'meta' => array(756 'class' => 'hide-if-no-customize',757 ),758 ) );759 }760 729 } 761 730 762 731 if ( current_theme_supports( 'custom-header' ) ) { … … 769 738 'class' => 'hide-if-customize', 770 739 ), 771 740 ) ); 772 773 if ( current_user_can( 'customize' ) ) {774 $wp_admin_bar->add_menu( array(775 'parent' => 'appearance',776 'id' => 'customize-header',777 'title' => __( 'Header' ),778 'href' => add_query_arg( urlencode( 'autofocus[control]' ), 'header_image', $customize_url ), // urlencode() needed due to #16859779 'meta' => array(780 'class' => 'hide-if-no-customize',781 ),782 ) );783 }784 741 } 785 742 786 743 } -
src/wp-includes/class-wp-admin-bar.php
556 556 add_action( 'admin_bar_menu', 'wp_admin_bar_wp_menu', 10 ); 557 557 add_action( 'admin_bar_menu', 'wp_admin_bar_my_sites_menu', 20 ); 558 558 add_action( 'admin_bar_menu', 'wp_admin_bar_site_menu', 30 ); 559 add_action( 'admin_bar_menu', 'wp_admin_bar_updates_menu', 40 ); 559 add_action( 'admin_bar_menu', 'wp_admin_bar_customize_menu', 40 ); 560 add_action( 'admin_bar_menu', 'wp_admin_bar_updates_menu', 50 ); 560 561 561 562 // Content related. 562 563 if ( ! is_network_admin() && ! is_user_admin() ) { -
src/wp-includes/css/admin-bar.css
521 521 top: 2px; 522 522 } 523 523 524 #wpadminbar #wp-admin-bar-customize > .ab-item:before { 525 content: '\f540'; 526 top: 2px; 527 } 528 529 524 530 #wpadminbar #wp-admin-bar-edit > .ab-item:before { 525 531 content: '\f464'; 526 532 top: 2px; … … 882 888 /* My Sites and "Site Title" menu */ 883 889 #wpadminbar #wp-admin-bar-my-sites > .ab-item, 884 890 #wpadminbar #wp-admin-bar-site-name > .ab-item, 891 #wpadminbar #wp-admin-bar-customize > .ab-item, 885 892 #wpadminbar #wp-admin-bar-edit > .ab-item, 886 893 #wpadminbar #wp-admin-bar-my-account > .ab-item { 887 894 text-indent: 100%; … … 903 910 #wpadminbar #wp-admin-bar-edit > .ab-item:before, 904 911 #wpadminbar #wp-admin-bar-my-sites > .ab-item:before, 905 912 #wpadminbar #wp-admin-bar-site-name > .ab-item:before, 913 #wpadminbar #wp-admin-bar-customize > .ab-item:before, 906 914 #wpadminbar #wp-admin-bar-my-account > .ab-item:before { 907 915 display: block; 908 916 text-indent: 0; … … 1016 1024 #wpadminbar li#wp-admin-bar-my-sites, 1017 1025 #wpadminbar li#wp-admin-bar-updates, 1018 1026 #wpadminbar li#wp-admin-bar-site-name, 1027 #wpadminbar li#wp-admin-bar-customize, 1019 1028 #wpadminbar li#wp-admin-bar-new-content, 1020 1029 #wpadminbar li#wp-admin-bar-edit, 1021 1030 #wpadminbar li#wp-admin-bar-comments, … … 1130 1139 box-shadow: none; 1131 1140 } 1132 1141 } 1142 1143 /* Very narrow screens */ 1144 @media screen and (max-width: 400px) { 1145 #wpadminbar li#wp-admin-bar-new-content { 1146 display: none; 1147 } 1148 }