web-dev-qa-db-fra.com

Changez les étiquettes sur "Pseudo" et "Informations biographiques" dans user-edit.php

Pour un projet sur lequel je travaille, je souhaite modifier les libellés des champs "Surnom" et "Informations biographiques" sur la page de modification du profil (user-edit.php) dans le tableau de bord. Je veux toujours utiliser ces champs tels quels, je veux seulement changer les étiquettes. Quelqu'un sait d'une fonction qui peut faire cela?

1
John Chandler

Chaque chaîne passe par translate(), qui utilise le filtre gettext. Cela signifie que vous pouvez essayer quelque chose comme ceci:

add_filter( 'gettext', 'wpse6096_gettext', 10, 2 );
function wpse6096_gettext( $translation, $original )
{
    if ( 'Nickname' == $original ) {
        return 'Funny name';
    }
    if ( 'Biographical Info' == $original ) {
        return 'Resume';
    }
    return $translation;
}

C'est probablement encore plus efficace si vous appelez le add_filter uniquement lorsque vous êtes sur la page user-edit.php (voir le hook admin_head-user-edit.php ou quelque chose comme ça).

9
Jan Fabry

Je suis en retard avec la réponse, mais voici ma prise de toute façon. De légères différences et ce filtre sélectif ajoute.

add_action('admin_head-user-edit.php', 'setup_user_edit');

function setup_user_edit() {

    add_filter('gettext', 'change_profile_labels');
}

function change_profile_labels($input) {

    if ('Nickname' == $input)
        return 'Nickname replacement';

    if ('Biographical Info' == $input)
        return 'Biographical Info replacement';

    return $input;
}
3
Rarst