Make WordPress Core


Ignore:
Timestamp:
09/25/2011 11:30:40 PM (13 years ago)
Author:
koopersmith
Message:

Second pass, admin bar overhaul. see #18197.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/wp-includes/admin-bar.php

    r18745 r18776  
    6868
    6969/**
     70 * Add the WordPress logo menu.
     71 *
     72 * @since 3.3.0
     73 */
     74function wp_admin_bar_wp_menu( $wp_admin_bar ) {
     75    $wp_admin_bar->add_menu( array(
     76        'id'    => 'wp-logo',
     77        'title' => ' ',
     78        'href'  => '#',
     79        'meta'  => array(
     80            'class' => 'wp-admin-bar-logo',
     81        ),
     82    ) );
     83
     84    // Add "About This Version" link
     85    $wp_admin_bar->add_menu( array(
     86        'parent' => 'wp-logo',
     87        'id'     => 'about',
     88        'title'  => __('About This Version'),
     89        'href'   => admin_url('about.php'),
     90    ) );
     91
     92    // Add codex link
     93    $wp_admin_bar->add_menu( array(
     94        'parent' => 'wp-logo',
     95        'id'     => 'documentation',
     96        'title'  => __('Documentation'),
     97        'href'   => 'http://codex.wordpress.org',
     98    ) );
     99
     100    // Add forums link
     101    $wp_admin_bar->add_menu( array(
     102        'parent' => 'wp-logo',
     103        'id'     => 'support-forums',
     104        'title'  => __('Support Forums'),
     105        'href'   => 'http://wordpress.org/support/',
     106    ) );
     107
     108    // Add WordPress.org link
     109    $wp_admin_bar->add_menu( array(
     110        'parent' => 'wp-logo',
     111        'id'     => 'wporg',
     112        'title'  => __('WordPress.org'),
     113        'href'   => 'http://wordpress.org',
     114    ) );
     115}
     116
     117/**
    70118 * Add the "My Account" menu and all submenus.
    71119 *
     
    75123    global $user_identity;
    76124
    77     $user_id = get_current_user_id();
     125    $user_id      = get_current_user_id();
     126    $current_user = wp_get_current_user();
    78127
    79128    if ( 0 != $user_id ) {
    80129        /* Add the 'My Account' menu */
    81130        $avatar = get_avatar( get_current_user_id(), 28 );
    82         $id     = ( ! empty( $avatar ) ) ? 'my-account-with-avatar' : 'my-account';
    83131        $howdy  = sprintf( __('Howdy, %1$s'), $user_identity );
    84 
    85         $wp_admin_bar->add_menu( array( 'id' => $id, 'title' => $howdy . $avatar,  'href' => get_edit_profile_url( $user_id ) ) );
     132        $class  = 'opposite';
     133
     134        if ( ! empty( $avatar ) )
     135            $class .= ' with-avatar';
     136
     137        $wp_admin_bar->add_menu( array(
     138            'id'    => 'my-account',
     139            'title' => $howdy . $avatar,
     140            'href'  => get_edit_profile_url( $user_id ),
     141            'meta'  => array(
     142                'class' => $class,
     143            ),
     144        ) );
    86145
    87146        /* Add the "My Account" sub menus */
    88         $wp_admin_bar->add_menu( array( 'id' => 'edit-profile', 'parent' => $id, 'title' => __( 'Edit My Profile' ), 'href' => get_edit_profile_url( $user_id ) ) );
    89         $wp_admin_bar->add_menu( array( 'id' => 'logout', 'parent' => $id, 'title' => __( 'Log Out' ), 'href' => wp_logout_url() ) );
     147
     148
     149
     150        $user_info  = get_avatar( get_current_user_id(), 64 );
     151        $user_info .= "<span class='display-name'>{$current_user->display_name}</span>";
     152
     153        if ( $current_user->display_name !== $current_user->user_nicename )
     154            $user_info .= "<span class='username'>{$current_user->user_nicename}</span>";
     155
     156        $wp_admin_bar->add_menu( array(
     157            'parent' => 'my-account',
     158            'id'     => 'user-info',
     159            'title'  => $user_info,
     160            'meta'   => array(
     161                'class' => 'user-info user-info-item'
     162            ),
     163        ) );
     164        $wp_admin_bar->add_menu( array(
     165            'parent' => 'my-account',
     166            'id'     => 'edit-profile',
     167            'title'  => __( 'Edit My Profile' ),
     168            'href' => get_edit_profile_url( $user_id ),
     169            'meta'   => array(
     170                'class' => 'user-info-item',
     171            ),
     172        ) );
     173        $wp_admin_bar->add_menu( array(
     174            'parent' => 'my-account',
     175            'id'     => 'logout',
     176            'title'  => __( 'Log Out' ),
     177            'href'   => wp_logout_url(),
     178            'meta'   => array(
     179                'class' => 'user-info-item',
     180            ),
     181        ) );
     182
     183        $wp_admin_bar->add_menu( array(
     184            'parent' => 'my-account',
     185            'id'     => 'my-account-secondary',
     186            'title'  => '&nbsp;',
     187            'meta'   => array(
     188                'class' => 'secondary',
     189            ),
     190        ) );
     191    }
     192
     193    wp_admin_bar_my_sites_menu( $wp_admin_bar );
     194}
     195
     196/**
     197 * Add the "Network Admin" menu.
     198 *
     199 * @since 3.3.0
     200 */
     201function wp_admin_bar_network_admin_menu( $wp_admin_bar ) {
     202    if ( is_multisite() && is_super_admin() && ! is_network_admin() ) {
     203        $wp_admin_bar->add_menu( array(
     204            'id'    => 'network-admin',
     205            'title' => __('Network Admin'),
     206            'href'  => network_admin_url(),
     207            'meta'  => array(
     208                'class' => 'opposite',
     209            ),
     210        ) );
    90211    }
    91212}
     
    160281    global $wpdb;
    161282
    162     /* Add the 'My Sites' menu if the user has more than one site. */
    163     // if ( count( $wp_admin_bar->user->blogs ) <= 1 )
    164     //  return;
    165 
    166     if ( is_multisite() )
    167         $url = admin_url( 'my-sites.php' );
    168     else
    169         $url = admin_url();
    170 
    171     $wp_admin_bar->add_menu( array(
    172         'id'    => 'my-blogs',
    173         'title' => '&nbsp;',
    174         'href'  => $url,
    175         'meta'  => array(
    176             'class' => 'wp-admin-bar-logo',
    177         ),
    178     ) );
    179 
    180     // Add network admin link
    181     if ( is_multisite() && is_super_admin() && ! is_network_admin() ) {
    182         $wp_admin_bar->add_menu( array(
    183             'parent' => 'my-blogs',
    184             'id'     => 'network-admin',
    185             'title'  => __('Network Admin'),
    186             'href'   => network_admin_url(),
    187         ) );
    188     }
    189 
    190283    if ( is_user_logged_in() ) {
    191284        // Add blog links
     
    203296
    204297            $blogname = empty( $blog->blogname ) ? $blog->domain : $blog->blogname;
    205 
    206             $wp_admin_bar->add_menu( array( 'parent' => 'my-blogs', 'id' => 'blog-' . $blog->userblog_id, 'title' => $blavatar . $blogname,  'href' => get_admin_url($blog->userblog_id) ) );
    207             $wp_admin_bar->add_menu( array( 'parent' => 'blog-' . $blog->userblog_id, 'id' => 'blog-' . $blog->userblog_id . '-d', 'title' => __( 'Dashboard' ), 'href' => get_admin_url($blog->userblog_id) ) );
     298            $menu_id  = 'blog-' . $blog->userblog_id;
     299
     300            $wp_admin_bar->add_menu( array(
     301                'parent' => 'my-account-secondary',
     302                'id'     => $menu_id,
     303                'title'  => $blavatar . $blogname,
     304                'href'   => get_admin_url( $blog->userblog_id ),
     305            ) );
     306
     307            $wp_admin_bar->add_menu( array(
     308                'parent' => $menu_id,
     309                'id'     => $menu_id . '-d',
     310                'title'  => __( 'Dashboard' ),
     311                'href'   => get_admin_url( $blog->userblog_id ),
     312            ) );
    208313
    209314            if ( current_user_can_for_blog( $blog->userblog_id, 'edit_posts' ) ) {
    210                 $wp_admin_bar->add_menu( array( 'parent' => 'blog-' . $blog->userblog_id, 'id' => 'blog-' . $blog->userblog_id . '-n', 'title' => __( 'New Post' ), 'href' => get_admin_url($blog->userblog_id, 'post-new.php') ) );
    211                 $wp_admin_bar->add_menu( array( 'parent' => 'blog-' . $blog->userblog_id, 'id' => 'blog-' . $blog->userblog_id . '-c', 'title' => __( 'Manage Comments' ), 'href' => get_admin_url($blog->userblog_id, 'edit-comments.php') ) );
     315                $wp_admin_bar->add_menu( array(
     316                    'parent' => $menu_id,
     317                    'id'     => $menu_id . '-n',
     318                    'title'  => __( 'New Post' ),
     319                    'href'   => get_admin_url( $blog->userblog_id, 'post-new.php' ),
     320                ) );
     321                $wp_admin_bar->add_menu( array(
     322                    'parent' => $menu_id,
     323                    'id'     => $menu_id . '-c',
     324                    'title'  => __( 'Manage Comments' ),
     325                    'href'   => get_admin_url( $blog->userblog_id, 'edit-comments.php' ),
     326                ) );
    212327            }
    213328
    214             $wp_admin_bar->add_menu( array( 'parent' => 'blog-' . $blog->userblog_id, 'id' => 'blog-' . $blog->userblog_id . '-v', 'title' => __( 'Visit Site' ), 'href' => get_home_url($blog->userblog_id) ) );
     329            $wp_admin_bar->add_menu( array(
     330                'parent' => $menu_id,
     331                'id'     => $menu_id . '-v',
     332                'title'  => __( 'Visit Site' ),
     333                'href'   => get_home_url( $blog->userblog_id ),
     334            ) );
    215335        }
    216336    }
    217 
    218     // Add WordPress.org link
    219     $wp_admin_bar->add_menu( array(
    220         'parent' => 'my-blogs',
    221         'id'     => 'about',
    222         'title'  => __('About This Version'),
    223         'href'   => admin_url('about.php'),
    224     ) );
    225 
    226     // Add WordPress.org link
    227     $wp_admin_bar->add_menu( array(
    228         'parent' => 'my-blogs',
    229         'id'     => 'wporg',
    230         'title'  => __('WordPress.org'),
    231         'href'   => 'http://wordpress.org',
    232     ) );
    233337}
    234338
Note: See TracChangeset for help on using the changeset viewer.