удалить админ-меню "профиль" из административной панели - PullRequest
1 голос
/ 24 декабря 2010

Я использую WordPress и хочу полностью удалить пункт меню "профиль"

У кого-нибудь есть идеи, как мне этого добиться?

Спасибо

Ответы [ 3 ]

5 голосов
/ 14 февраля 2012

Для полноты, вот как это сделать программно ...

// Run the function on admin_init
add_action('admin_init', 'remove_profile_menu');

// Removal function
function remove_profile_menu() {
  global $wp_roles;

  // Remove the menu. Syntax is `remove_submenu_page($menu_slug, $submenu_slug)`
  remove_submenu_page('users.php', 'profile.php');

  /* Remove the capability altogether. Syntax is `remove_cap($role, $capability)`
   * 'Read' is the only capability subscriber has by default, and allows access
   * to the Dashboard and Profile page. You can also remove from a specific user
   * like this:
   * $user = new WP_User(null, $username);
   * $user->remove_cap($capability); 
   */
  $wp_roles->remove_cap('subscriber', 'read');
}
2 голосов
/ 27 октября 2013

Я знаю, что уже поздно, но я наткнулся на это и подумал, что добавлю к этому. Это удаляет элемент меню профиля подменю, но не удаляет элемент профиля меню. Для такого человека, как я, который создал полностью пользовательскую страницу профиля, я не хочу, чтобы мои пользователи вообще обращались к странице profile.php Так что этот код будет работать для этого:

function remove_profile_menu() {

    remove_submenu_page('users.php', 'profile.php');
    remove_menu_page('profile.php');
}

add_action('admin_menu', 'remove_profile_menu');

И если вы хотите сделать это только для определенных возможностей .... используйте этот код:

function remove_profile_menu() {

    // Only the Admin can see the profile menu
    if(!current_user_can('update_core')) {

    remove_submenu_page('users.php', 'profile.php');
    remove_menu_page('profile.php');

    }
}

add_action('admin_menu', 'remove_profile_menu');

Вы можете использовать функцию current_user_can (), чтобы определить, кому вы хотите видеть пункты меню.

2 голосов
/ 24 декабря 2010
Плагин

Profiless делает это на уровне подписчика.Если вы хотите сделать это для других групп, вам, вероятно, следует использовать его в сочетании с плагином Capability Manager .

...