Получите текущего зарегистрированного пользователя в разделе 3.1, повторно: удалите "Привет"


Я использую это в functions.php, чтобы изменить "привет" на ", вошедший в систему как.... "Но теперь в разделе 3.1 я получаю ", Вошедший в систему как Ваш профиль", а не ", Вошедший в систему как <current user>"

Что нужно изменить, чтобы "пользователь" ниже (прокомментированный ниже как //get current user?) возвращает текущего пользователя в 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 
    } 
}
Author: Ethan O'Sullivan, 2011-07-08

2 answers

Зачем возиться с jQuery, когда вы можете просто запустить фильтр на gettext, чтобы конкретно настроить этот текст? Возможно, вы просто не знаете, что можете это сделать, так что вот как..

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

Надеюсь, это поможет. :)

 5
Author: t31os, 2011-07-08 15:22:42
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
Author: Milo, 2011-07-08 14:34:13