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?

Sean Lee
fonte

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);
Wyck
fonte
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 );
}
pascal
fonte
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.

BjornW
fonte
Escondê-lo não está limpo o suficiente, como reescrever, de qualquer maneira, para reescrevê-lo?
21711 Sean Sean