web-dev-qa-db-ja.com

WordPress管理者バックエンドの「プロフィールを編集」リンクの名前を変更する方法

この時点で私は本当に混乱しています。 adminバックエンドでEdit My Profileリンクの名前を変更する方法がわかりません。

どうすればそれができますか?

1
Husnain Ahmed

wp_before_admin_bar_renderフック を使うことができます。あなたはそれらをあなたのテーマのfunctions.phpに入れることによってコーデックスページのコードサンプルで遊ぶことができます。

まず最初にprint_r()を使ってその内容を出力することでオブジェクトを調べることができます、そしてあなたはすべての身近なアイテムを見るでしょう。私はおそらくremove_menuヘルパーを使用し、それから物事をきれいに保つために修正されたリンクタイトルで新しいものを追加するでしょう。

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'
        ));
}

このアプローチの欠点は、新しいアイテムが同じ場所に表示されないことです。

0
montrealist

バックエンドでコアコードから文字列を変更したい場合は、 gettextフィルタ を使用するのが賢い方法です。

このフィルタは、すべての国際化機能、つまりすべての翻訳可能な文字列に対して適用されます。

あなたの目的が翻訳ではなく名前の変更であるとしても、それはトリックをします:

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 );

明らかにあなたは別の翻訳可能な文字列を返すことでも可能です。
最初のreturnステートメントの後の__( 'Edit My Userdata', 'your-text-domain' )

0
Johannes Pille