Cum să elimini "Editează profilul" din bara de meniu din admin WordPress

15 iul. 2011, 13:43:04
Vizualizări: 13.9K
Voturi: 8

Cum pot elimina submeniul "Editează profilul" de sub "contul-meu-cu-avatar" din bara de meniu admin, păstrând totuși avatarul și butonul de logout?

0
Toate răspunsurile la întrebare 3
9
12

Există un hook remove_menu pentru bara de meniu din administrare.

Clasa în care dori să faci hook este $wp_admin_bar, poți vedea funcția de eliminare aici și să o testezi deoarece nu există documentație pentru ea (linia 86), ar trebui să funcționeze cu ID-ul submeniului.

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

Deoarece păreai să nu mă crezi, iată codul.........

function ya_do_it_admin_bar_remove() {
        global $wp_admin_bar;

        /* **edit-profile este ID-ul** */
        $wp_admin_bar->remove_menu('edit-profile');
 }

add_action('wp_before_admin_bar_render', 'ya_do_it_admin_bar_remove', 0);
16 iul. 2011 02:18:44
Comentarii

Nu există un hook individual pentru "editare profil". Fie pierd întregul meniu de cont cu logout și editare profil și avatar (dacă există), fie le păstrez pe toate. Așa că am ajuns să modific admin-bar.php

Sean Lee Sean Lee
17 iul. 2011 22:05:29

Codul de mai sus preia ID-urile, elementul de submeniu cu siguranță are un ID, nu modifica fișierele core, acestea sunt suprascrise la actualizări pe lângă aproximativ 100 de alte motive.

Wyck Wyck
17 iul. 2011 22:39:10

Din păcate nu există niciun ID individual pentru editarea profilului meu. Apropo, acest element se află în admin-bar.php. Doar dacă ai găsit ceva diferit care mi-a scăpat. Te rog să-mi spui.

Sean Lee Sean Lee
18 iul. 2011 02:20:24

Știu la ce servește și are un ID, afișează array-ul meniului din bara de administrare și îl vei vedea, îl poți vedea și în fișierul core pe care l-am linkat mai sus, $child = array( 'id' => $id, 'title' => $title, 'href' => $href );

Wyck Wyck
18 iul. 2011 06:02:17

Am adăugat codul în OP (postul original) deoarece se pare că nu mă crezi... dar mulțumesc pentru downvote...

Wyck Wyck
18 iul. 2011 06:29:07

Mulțumesc pentru cod. Nu e că nu te cred, am încercat atunci și nu a funcționat. DE ASEMENEA, nu am avut dreptul să downvotez, probabil a fost altcineva. Acum am văzut un upvote și niciunul nu e din partea mea.

Sean Lee Sean Lee
22 iul. 2011 22:11:53

acum că am suficiente drepturi, iată verificarea pe care ți-o datoram. Mulțumesc.

Sean Lee Sean Lee
2 aug. 2011 11:05:25

Uau! Acest hook funcționează perfect. Mulțumesc mult @Wyck. Funcționează 100% pe WordPress 3.8.1.

Thein Hla Maw Thein Hla Maw
23 mar. 2014 20:01:28

Nu cea mai bună soluție, utilizatorul poate încă să-și editeze contul atunci când adaugă profile.php în URL...

csandreas1 csandreas1
28 iun. 2018 00:41:46
Arată celelalte 4 comentarii
1

WordPress a introdus elemente noi (noduri).

Căutam să elimin complet 'caseta cont utilizator' și să adaug un simplu buton de deconectare:

//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-ul nodului existent (New > Post)
        'title'  => 'Deconectare',      // modifică titlul nodului existent
        'parent' => 'top-secondary',    // setează părintele
    );
    $wp_admin_bar->add_node( $args );
}
3 dec. 2013 17:37:41
Comentarii

Cum puteți afișa numele blogului aici, prenumele, numele de familie, precum și opțiunea de deconectare

Amjad Amjad
18 oct. 2016 00:00:08
1

Nu sunt sigur dacă poți să îl elimini (nu am verificat), dar poți obține același rezultat folosind CSS pentru a ascunde linkul de editare a profilului. Elementul de listă are un ID 'wp-admin-bar-edit-profile' pe care îl poți folosi pentru a-l ascunde. Acesta este codul HTML utilizat în bara de administrare:

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

Eu folosesc următorul cod CSS:

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

Aceasta ascunde linkul din bara de administrare fără a afecta celelalte linkuri. Adaugă acest fragment CSS în fișierul style.css al temei tale și linkul va fi ascuns în bara de administrare când vizualizezi site-ul. Ascunderea lui în bara de administrare când accesezi panoul de administrare WordPress implică puțin mai mult și s-ar putea să fie inutil, deoarece există și un link către profil în meniul din stânga.

15 iul. 2011 19:30:10
Comentarii

Ascunderea nu este suficient de curată, cum ar fi rescrierea, există vreo metodă de a o rescrie?

Sean Lee Sean Lee
15 iul. 2011 20:49:27