rimuovi "modifica profilo" dalla barra del menu admin
Esiste un hook remove_menu per la barra del menu di amministrazione.
La classe a cui vuoi agganciarti è $wp_admin_bar, puoi vedere la funzione di rimozione qui e testarla dato che non c'è documentazione al riguardo (riga 86), dovrebbe funzionare con l'ID del sottomenu.
http://core.trac.wordpress.org/browser/tags/3.2.1/wp-includes/class-wp-admin-bar.php
Dato che sembravi non credermi, ecco il codice.........
function ya_do_it_admin_bar_remove() {
global $wp_admin_bar;
/* **edit-profile è l'ID** */
$wp_admin_bar->remove_menu('edit-profile');
}
add_action('wp_before_admin_bar_render', 'ya_do_it_admin_bar_remove', 0);
Non esiste un hook individuale per "modifica il mio profilo". O perdo l'intero menu dell'account con logout e modifica profilo e avatar (se presente), o li tengo tutti. Quindi alla fine ho modificato admin-bar.php
Sean Lee
Il codice sopra prende gli ID, l'elemento del sottomenu sicuramente ha un ID, non modificare i file core, vengono sovrascritti durante gli aggiornamenti oltre a circa 100 altri motivi.
Wyck
Sfortunatamente non c'è alcun ID individuale per modifica il mio profilo. Comunque, questo elemento si trova in admin-bar.php. A meno che tu non abbia trovato qualcosa di diverso che mi sia sfuggito. Fammi sapere.
Sean Lee
So a cosa serve e ha un ID, esegui il dump dell'array del menu della barra di amministrazione e lo vedrai, puoi anche vederlo nel file core che ho linkato sopra, $child = array( 'id' => $id, 'title' => $title, 'href' => $href );
Wyck
Ho aggiunto il codice all'OP dato che sembri non credermi... ma grazie per il downvote...
Wyck
Grazie per il codice. Non è che non ti credo, l'ho provato e allora non funzionava. INOLTRE, non avevo il diritto di downvotare, deve essere stato qualcun altro. Ora ho visto un upvote, e nessuno è opera mia.
Sean Lee
ora che ho abbastanza diritti, ecco il controllo che ti dovevo. Grazie.
Sean Lee
Wow! Questo hook funziona perfettamente. Grazie mille @Wyck. Funziona al 100% su WordPress 3.8.1.
Thein Hla Maw
WordPress ha introdotto nuove funzionalità (nodi).
Stavo cercando di rimuovere completamente la 'box dell'account utente' e aggiungere un semplice logout:
//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 del nodo figlio esistente (Nuovo > Articolo)
'title' => 'Disconnetti', // modifica il titolo del nodo esistente
'parent' => 'top-secondary', // imposta il genitore
);
$wp_admin_bar->add_node( $args );
}
Non sono sicuro se puoi rimuoverlo (non ho verificato), ma puoi ottenere lo stesso risultato utilizzando il CSS per nascondere il link "Modifica il tuo profilo". L'elemento della lista ha un ID 'wp-admin-bar-edit-profile' che puoi usare per nasconderlo. Questo è l'HTML utilizzato nella barra di amministrazione:
<li id="wp-admin-bar-edit-profile" class="">
<a href="http://www.example.com/wp-admin/profile.php">Modifica il Mio Profilo</a>
</li>
Sto utilizzando il seguente CSS:
#wp-admin-bar-edit-profile { display: none }
Questo nasconde il link nella barra di amministrazione senza influenzare gli altri link. Aggiungi questo snippet CSS al file style.css del tuo tema e il link sarà nascosto nella barra di amministrazione quando visualizzi il tuo sito. Nasconderlo nella barra di amministrazione quando visualizzi il backend di WordPress richiede un po' più di lavoro e potrebbe essere superfluo dato che c'è anche un link al profilo nel menu a sinistra.