How to Replace or Remove WordPress Howdy

WordPressYou can either replace or remove the WordPress Howdy message in the administrative back-end by adding the following in your WordPress theme’s functions.php file:

It was recently brought to my attention that this method of removing Howdy from the WordPress admin bar no longer works with Version 3.3 because the filter admin_user_info_links had been deprecated. By following a comment at a post regarding the admin_user_info_links filter being gone in 3.3 made by a WordPress core dev Andrew Nacin I’ve updated the code snippet below to replace Howdy in WordPress version 3.3.

Replace the WordPress Howdy Message in Version 3.3

/**
 * replace WordPress Howdy
 */
function goodbye_howdy ( $wp_admin_bar ) {
    $avatar = get_avatar( get_current_user_id(), 16 );
    if ( ! $wp_admin_bar->get_node( 'my-account' ) )
        return;
    $wp_admin_bar->add_node( array(
        'id' => 'my-account',
        'title' => sprintf( 'Logged in as, %s', wp_get_current_user()->display_name ) . $avatar,
    ) );
}
add_action( 'admin_bar_menu', 'goodbye_howdy' );

Replace the WordPress Howdy Message pre Version 3.2

/**
 * replace WordPress Howdy
 */
function goodbye_howdy($links)
{
        $links = str_replace( 'Howdy', 'Logged in as', $links );
        return $links;
}
add_filter( 'admin_user_info_links', 'goodbye_howdy' );

If you’d just like to completely remove the WordPress Howdy message in the admin, and you’re feeling a little fancy, just use the following code snippet:

Remove the WordPress Howdy Message

/**
 * remove WordPress Howdy
 */
add_filter( 'admin_user_info_links', create_function('$links', 'return str_replace( "Howdy, ", "", $links );') );

That’s it. These two snippets of code put in your WordPress theme’s functions.php file will allow you to either replace or completely remove the Howdy message in the WordPress admin.

Post written by Ed Reckers

Founder and lead web development consultant at Red Bridge Internet : San Francisco WordPress Developers and Consultants.

14 Responses to “How to Replace or Remove WordPress Howdy”

  1. Steffen

    Hi,

    thank you for this post, I was looking for this kind of information. However I am wondering if you would know also how to change in the admin header area the name of the link that goes back to the frontend? I.e. besides the Admin logo, where it shows by default the blog or site name. I would like to change it to something like “Back to Homepage” or something similar, but without changing the core file. I think one way of doing this is to delete the site name under Settings/General, but that does not make much sense to me.
    Many thanks! Kind regards,
    Steffen

  2. ereckers

    Steffen,

    That’s a good question. I understood it as you wanting to replace the displayed site title in the WordPress Admin.

    You could try something like this:

    /**
     * customize Admin header title (replaces site title / bloginfo('name') )
     */
    function replace_admin_bloginfo_name( $output, $show )
    {
     
            if ( is_admin() && $show == "name" ) {
                    $output = 'New Title of Your Admin Page';
            }
     
            return $output;
    }
    add_filter( 'bloginfo', 'replace_admin_bloginfo_name', 10, 2 );

    It’s too bad that WordPress allows a filter on the actual html_title ($admin_title), but hadn’t done it for the displayed title ($blog_name) in the file admin-header.php. That would have been the simple way of replacing the administrator title.

    What I did above was plugin to the bloginfo filters in the fuction get_bloginfo in the file general-template.php. I don’t know how elegant the solution is (I’m thinking performance-wise), but it’s tested out alright for me. This should allow you to replace the WordPress admin site title.

  3. Steffen

    Excellent, it worked like a charm. Thanks a lot! I did not observe any performance issues so far with that solution, so it great.

    What is strange for me is that nobody ever seemed to think about applying this change, I was looking a lot for it but everybody just talks about changing the Admin logo :)

    Would it be ok with you if I post it on my own site?

    Cheers,
    Steffen

  4. ereckers

    Steffen,

    I’m glad it’s working for you. I’ll probably end up using it myself some day so it was a pleasure looking into it. I don’t mind you posting it on your site at all.

    Have a good one,

    Ed

  5. Justin

    Hi guys,

    great bits of code here! I am using both now :)

    I have a quick question, relating to the code that you supplied for Steffen.

    I would really like to adapt this so that it took the “Site Name” as usual and then added “Click to go back to site” and maybe even open in a target=”blank”.

    It would be awesome if it could look something like: http://screencast.com/t/7w30s9kI5Z

    Any hints/tips will be GREATLY appreciated!

  6. ereckers

    Justin,

    I think you’ll be able to do something like this:

    /**
     * customize Admin header title by appending a secondary link ( hook in admin-header.php )
     */
    function appendto_admin_site_heading()
    {
            echo '<div id="site-heading-secondary"><a href="/" rel="nofollow">Click to go back to site</a></div>';
    }
    add_action( 'in_admin_header', 'appendto_admin_site_heading' );

    In the case above, inserting another div after the H1. You’ll need to style the sub-heading yourself by doing something like this:

    #site-heading-secondary {
        display: inline;
        font-size: .8em;
    }
    

    Basically, you’ll need to do some CSS to have it set between the site-heading and wphead-info.

    ** Note: I was looking into just appending the new sub-title to the $output of the function I put together for Steffen, WordPress escapes the html here so wrapping it with any tag just led to a jumble (unless you don’t need to format it any differently). That’s why I had to go with using the in_admin_header hook.

  7. Justin

    Excellent!!!!

    Pure awesomeness! :)

    I changed the CSS to:

    #site-heading-secondary {
    font-size: 50%;
    font-style: normal;
    line-height: 17px;
    padding: 13px 0 0;
    vertical-align: middle;
    float:left;
    }

    Thanks! Tweeted for you!!!

  8. ereckers

    Justin, great to hear it worked. Also, thanks for the correct CSS and tweet.

    I wanted to give you a heads up. If you’re using the bit of code in the comments above that replaces the title of the admin header, make sure that it’s updated to the latest (I’ve made the update in the comment above).

    The update checks a new variable called $show to make sure that it’s making the replacement at the right spot.

  9. cardbaba

    really useful codes…can anyone suggest me how can i remove –Wordpress from the title of wordpress admin panel..
    any help appreciated

  10. - Uncategorized - AxWax

    […] to Ed Reckers and Andrew Nacin for […]

  11. David

    This no longer works as of WP 3.3 because the admin_user_info_links filter is deprecated.

  12. digo

    why not change it in admin-bar.php in /wp-includes sub directory? Where says: $howdy = sprintf( __(‘Howdy, %1$s’), $current_user->display_name );

    Change Howdy to Welcome

  13. Ed Reckers

    @David, thanks for the comment. I’ve made an update to the post to reflect this and to provide an alternative method for replacing “Howdy” for WordPress 3.3 and hopefully beyond.

  14. Ed Reckers

    @digo, thanks for the suggestion, and that would in fact work if you didn’t mind having to update it each time you updated WordPress. It’s always best to leave core alone and interact with it using filters and hooks through your theme’s files or plugins.

Leave a Reply