web-dev-qa-db-fra.com

Comment changer le nom du lien "modifier mon profil" dans le backend de l'administrateur WordPress

Je suis vraiment confus à ce stade. Je n'arrive pas à comprendre comment renommer le lien Edit My Profile dans le backend de l'administrateur.

Comment cela peut-il être fait?

1
Husnain Ahmed

Vous pouvez utiliser le crochet wp_before_admin_bar_render . Vous pouvez jouer avec des exemples de code sur la page Codex en les plaçant dans le functions.php de votre thème.

Tout d'abord, vous pouvez essayer d'examiner l'objet en affichant son contenu avec print_r() et vous verrez tous les éléments familiers. J'utiliserais probablement remove_menu helper, puis j'en ajouterais un autre avec le titre du lien modifié, juste pour que tout reste clair.

add_action( 'wp_before_admin_bar_render', 'my_tweaked_admin_bar' ); 

function my_tweaked_admin_bar() {
    global $wp_admin_bar;

    $wp_admin_bar->remove_menu('edit-profile');

    $wp_admin_bar->add_menu( array(
            'id'    => 'edit-profile',
            'title' => 'Edit Zee Profile',
            'href'  => admin_url('profile.php'),
            'parent'=>'user-actions'
        ));
}

L'inconvénient de cette approche est que le nouvel élément n'apparaîtra pas au même endroit.

0
montrealist

Si vous voulez modifier les chaînes du code principal dans le back-end, un moyen astucieux de les consulter consiste à utiliser le filtre gettext .

Ce filtre est appliqué par chaque fonction d’internationalisation, c’est-à-dire pour chaque chaîne traduisible.

Même si votre objectif est de renommer le nom plutôt que de le traduire, le résultat est le suivant:

function wpse94377_change_admin_ui_text( $translation, $text ) {
    if( is_admin() && 'Edit My Profile' === $text ) {
        return 'Edit My Userdata';
    }
    return $translation;
}
add_filter( 'gettext', wpse94377_change_admin_ui_text, 10, 2 );

Évidemment, vous pouvez aussi retourner une autre chaîne traduisible en utilisant
__( 'Edit My Userdata', 'your-text-domain' ) après la première instruction return.

0
Johannes Pille