remova "editar seu perfil" da barra de menus do administrador


8

Como posso remover o submenu "editar seu perfil" na barra de menus do administrador "minha conta com avatar", mantendo o avatar e o logout?

Respostas:


11

Há um remove_menugancho para a barra de menus do administrador.

Na classe em que você deseja se conectar $wp_admin_bar, você pode ver a função remover aqui e testá-la, já que não há documentação (linha 86); ela deve funcionar com o ID do submenu.

http://core.trac.wordpress.org/browser/tags/3.2.1/wp-includes/class-wp-admin-bar.php

Desde que você não parecia acreditar em mim, aqui está o código .........

function ya_do_it_admin_bar_remove() {
        global $wp_admin_bar;

        /* **edit-profile is the ID** */
        $wp_admin_bar->remove_menu('edit-profile');
 }

add_action('wp_before_admin_bar_render', 'ya_do_it_admin_bar_remove', 0);

Não há gancho individual para "editar meu perfil". Ou eu perco o menu inteiro da conta com logout e edito o perfil e o avatar (se houver), ou mantenho todos eles. Então, acabei editando admin-bar.php
— Sean Lee

11
O código acima pega os IDs, o item do submenu certamente tem um ID, não corrompe arquivos principais, eles são substituídos nas atualizações, além de outras 100 razões.
— Wyck

Infelizmente, não há nenhum ID individual para editar meu perfil. BTW, este item está localizado em admin-bar.php. A menos que você tenha encontrado algo diferente que eu perdi. Por favor deixe-me saber.
— Sean Lee

Eu sei o que é e tem e ID, despejar a matriz de menu da barra de administração e você verá, você também pode vê-lo no arquivo principal que eu vinculei acima, #$child = array( 'id' => $id, 'title' => $title, 'href' => $href );
— Wyck

Adicionado código para OP desde que você parece não acredita em mim .... mas obrigado pela downvote ...
— Wyck

5

Wordpress introduziu novos stufs (nós).

Eu estava procurando remover completamente a 'caixa de conta de usuário' e adicionar um logout simples:

//http://codex.wordpress.org/Function_Reference/get_nodes
//http://codex.wordpress.org/Function_Reference/add_node

add_action( 'admin_bar_menu', 'remove_my_account', 999 );
function remove_my_account( $wp_admin_bar ) {
    $wp_admin_bar->remove_node( 'my-account' );
}


add_action( 'admin_bar_menu', 'add_logout', 999 );
function add_logout( $wp_admin_bar ) {
    $args = array(
        'id'     => 'logout',           // id of the existing child node (New > Post)
        'title'  => 'Se déconnecter',   // alter the title of existing node
        'parent' => 'top-secondary',    // set parent
    );
    $wp_admin_bar->add_node( $args );
}

Como você pode mostrar o nome do blog aqui, nome, sobrenome e logout
— Amjad

0

Não tenho certeza se você pode removê-lo (não foi verificado), mas você pode conseguir o mesmo usando css para ocultar o link editar seu perfil. O item da lista tem um ID 'wp-admin-bar-edit-profile' que você usa para ocultá-lo. Este é o html usado na barra de administração:

<li id="wp-admin-bar-edit-profile" class="">
  <a href="http://www.example.com/wp-admin/profile.php">Edit My Profile</a>
</li>

Estou usando o seguinte css:

#wp-admin-bar-edit-profile { display: none }

Isso oculta o link na barra de administração sem nenhum dos outros links. Adicione esse snippet de css ao style.css do seu tema e o link ficará oculto na barra de administração ao visualizar seu site. Escondê-lo na barra de administração ao visualizar o back-end do WordPress envolve um pouco mais e pode ser discutível, pois também há um link para o perfil no menu à esquerda.


Escondê-lo não está limpo o suficiente, como reescrever, de qualquer maneira, para reescrevê-lo?
— 21711 Sean Sean
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.