X

Restringir itens do menu Admin por nome de usuário

Snippets by IsItWP

Está procurando uma maneira de restringir o acesso aos itens de menu com base no nome de usuário? Embora provavelmente exista um plug-in para isso, criamos um trecho de código rápido que pode ser usado para restringir os itens do menu do administrador por nome de usuário no WordPress.

Instruções:

Tudo o que você precisa fazer é adicionar esse código ao arquivo functions.php do seu tema ou em um plug-in específico do site:

function remove_menus()
{
    global $menu;
    global $current_user;
    get_currentuserinfo();

    if($current_user->user_login == 'username')
    {
        $restricted = array(__('Posts'),
                            __('Media'),
                            __('Links'),
                            __('Pages'),
                            __('Comments'),
                            __('Appearance'),
                            __('Plugins'),
                            __('Users'),
                            __('Tools'),
                            __('Settings')
        );
        end ($menu);
        while (prev($menu)){
            $value = explode(' ',$menu[key($menu)][0]);
            if(in_array($value[0] != NULL?$value[0]:"" , $restricted)){unset($menu[key($menu)]);}
        }// end while

    }// end if
}
add_action('admin_menu', 'remove_menus');

Observação: Se esta é a primeira vez que você adiciona trechos de código no WordPress, consulte nosso guia sobre como adicionar corretamente trechos de código no WordPress para não danificar acidentalmente seu site.

Se você gostou desse snippet de código, considere dar uma olhada em nossos outros artigos no site, como: 27 melhores temas de negócios do WordPress para seu site e como criar um formulário de doação no WordPress.

Comentários   Deixe uma resposta

  1. Hi, do you have a method to hide a specific plugin’s menu and allow others? I Need to restrict a user (DB_manager) to only be able to manage Form Database plugin and nothing else on the Admin panel.

  2. Thanks, but it doesn’t seem to work for custom post types. Any suggestions?

  3. Seen this before. Pretty useful except doesn’t seem to work with menus that include spaces such as:
    __(‘Some Menu’)
    I’ve tried a few different special characters like underscores, nonbreaking space, etc. but doesn’t seem to do the trick. Also adjusted the priority, but it seems that this function doesn’t recognize spaces in the array. Any ideas?

    1. Hi Bryan,

      You may want to use this method
      http://codex.wordpress.org/Function_Reference/remove_menu_page
      You could then use “remove_menu_page” and “remove_submenu_page”

      you could then lose the while, something like: http://pastebin.com/8ShwZ5rg
      I have not tested this but should work.

  4. This snippet is only hide menu items from screen but doesn’t restrict access by url.

  5. any way to strip out a plug in admin feature, specifically eShop, from the Dashboard Admin.

Adicionar um comentário

Ficamos felizes por você ter optado por deixar um comentário. Lembre-se de que todos os comentários são moderados de acordo com nossa política de privacidade, e todos os links são nofollow. NÃO use palavras-chave no campo do nome. Vamos ter uma conversa pessoal e significativa.

WordPress Launch Checklist

A lista de verificação definitiva para o lançamento do WordPress

Compilamos todos os itens essenciais da lista de verificação para o lançamento de seu próximo site WordPress em um ebook prático.
Sim, envie-me o livro eletrônico gratuito grátis!