web-dev-qa-db-fra.com

Obtenir l'utilisateur actuellement connecté sous 3.1, re: remove "Howdy"

J'utilise ceci dans functions.php pour changer " howdy " en " Connecté en tant que .... "Mais maintenant, sous 3.1, je reçois" connecté en tant que votre profil "plutôt que" connecté en tant que <current user> "

Qu'est-ce qui doit être changé pour que "utilisateur" ci-dessous (commenté ci-dessous par //get current user?) renvoie l'utilisateur actuel en 3.1?

if (is_admin()) {
    add_action('init', 'better_howdy_h');
    add_action('admin_footer', 'better_howdy_f');

    function better_howdy_h() {
        wp_enqueue_script('jquery');
    }

    function better_howdy_f() {
?>
<script type="text/javascript">
/* <![CDATA[ */
    var user = jQuery('#user_info p a:first').text();
    var howdy = jQuery('#user_info p')
        .html()
        .replace(/<.+>/ig,'')
        .replace(/\ \|\n/ig,'');
    jQuery('#user_info p')
        .html(
            jQuery('#user_info p')
                .html()
                .replace(user,'My Profile')
        .replace(howdy,'Logged in as ' + user + ' | ') //get current user?
                .replace('!',' |')
                .replace('| |','|')
        );
/* ]]> */
</script>
<?php 
    } 
}
2
markratledge

Pourquoi bricoler avec jQuery alors que vous pouvez simplement utiliser un filtre sur gettext pour cibler spécifiquement ce texte? Peut-être que vous ne savez simplement pas que vous pouvez faire cela, alors voici comment….

add_filter( 'gettext', 'change_howdy_text', 10, 2 );
function change_howdy_text( $translation, $original ) {
    if( 'Howdy, %1$s' == $original )
        $translation = 'Logged in as %1$s';
    return $translation;
}

J'espère que cela pourra aider. :)

5
t31os
if (is_admin()) {
    add_action('init', 'better_howdy_h');
    add_action('admin_footer', 'better_howdy_f');

    function better_howdy_h() {
        wp_enqueue_script('jquery');
    }

    function better_howdy_f() {
?>
<script type="text/javascript">
/* <![CDATA[ */
    jQuery(document).ready(function(){
        var user = jQuery('#user_info div p').text();
        user = user.substr(7);
        jQuery('#user_info div p').html("Logged in as "+user);
    });
/* ]]> */
</script>
<?php 
    } 
}
1
Milo