如何在WordPress管理面板的主菜单顶部显示用户的头像?

时间:2021-07-14 作者:princeexpedition

我需要更新WordPress的管理面板,在那里我需要在管理主菜单的顶部显示当前用户的头像(参见屏幕截图)。

enter image description here

1 个回复
SO网友:bosco

我不确定core是否提供了任何适合此用途的挂钩。我当然看不出有什么目的the source which renders the admin menu.

但是,如果有一个更黑客的突发奇想,使用add_menu_item() 具有$position 0, 然后在中修改新菜单项注册$menu 全局,以便根据需要调整任何参数。

function wpse391894_admin_menu_avatar() {
  global $menu;

  $user  = wp_get_current_user();
  $title = sprintf(
    __( \'Howdy, %s\', \'wpse391894\' ),
    esc_html( $user->display_name )
  );
  $img   = get_avatar( $user );

  add_menu_page(
    $title,
    sprintf(
      "%s\\n%s",
      $img,
      $title
    ),
    \'read\',
    \'wpse391894-dummy-slug\',
    \'\',
    \'none\',
    0
  );

  // Look up a reference to the new menu item registration array.
  $item = &$menu[ array_key_last( $menu ) ];

  // Modify the link?
  $item[2] = "user-edit.php?user_id={$user->ID}";
}

add_action( \'admin_menu\', \'wpse391894_admin_menu_avatar\' );

enter image description here

相关推荐

Gravatar image url is wrong?

我有一段代码可以拉用户的坟墓:if( $current_user->ID == 0 ) { // Not logged in. echo \'<p><img src=\"\'.get_stylesheet_directory_uri().\'/img/wpb-default-gravatar.png\" alt=\"תמונת פרופיל\"></p>\'; echo \'<p>רוצה למכור?&