When creating themes for clients, you might want to provide them with some administrative branding. The first and easiest way to do that is by replacing the WordPress logo with your Custom Logo in the admin dashboard.
First you would need to create an image that has the dimensions of 30px wide and 31px tall. This image would need to be transparent either .gif or .png. The image matte color must match the background color which has the hex value of #464646.
Save that image in your theme’s image folder (http://cdn3.wpbeginner.com/wp-content/themes/theme-name/images) and name it whatever you like. In this example we will be naming it custom-logo.gif.
Now open your functions.php file located in your themes folder and add the following function in there:
//hook the administrative header output
add_action('admin_head', 'my_custom_logo');function my_custom_logo() {
echo '
<style type="text/css">
#header-logo { background-image: url('.get_bloginfo('template_directory').'/images/custom-logo.gif) !important; }
</style>
';
}
By adding this function, you are telling WordPress to add a function my_custom_logo in the field admin_head. This function will replace the original WordPress ‘W’ with your custom logo.
This is how it would look:

This trick is from Jacob Goldman’s Article on Smashing Magazine







Try this for WordPress 3.3.1 and above perhaps
add_action(‘admin_head’, ‘custom_admin_logo’);
/* Custom Dashboard Logo */
function custom_admin_logo() {
echo ‘
#wp-admin-bar-wp-logo > .ab-item .ab-icon {background:url(…) no-repeat;}
#wpadminbar.nojs #wp-admin-bar-wp-logo:hover > .ab-item .ab-icon, #wpadminbar #wp-admin-bar-wp-logo.hover > .ab-item .ab-icon {
background:url(..) no-repeat;}
‘;
}
*… replace with the image url
superb script thanks. but i wanna to get the image as a favicon how i get it ??
Unfortunately this is no more in 3.0. I was messing around with it the other day, but, didn’t come up with the proper solution … too tired maybe? but, they have combined what used to be the logo, and the visit site button. So, if you have this implemented, you have no link to the site unfortunately. If anyone works out a fix, I’m sure all of us who’ve implemented this would love to hear it
This still works, in version 3.0, you just have to have a 16×16 pixel logo, I have it working in v. 3.2.1
@milestogofromhere Doesn’t work for me. Don’t Know why. I´m using v. 3.3.1
@miguelmcolon@milestogofromhere It won’t work in 3.3+ because the site name and logo now appear in the toolbar at the top.
Thanks! This is a time saver reply. @esdev @miguelmcolon @milestogofromhere
Great tutorial. I will make that in my personal site that uses WordPress. Congratulations.
Thanks for posting this, it’s really simple to do and I think it adds a nice detail for clients.
how if direct replace image?
Sorry don’t understand what you are trying to ask.
I think Robin means “how about if we just replace the default image manually”
Well, if you do that, when upgrading to a newer version of WP, your logo will get overwritten and you’ll end up having the same WordPress logo in the admin
I can see how this would benefit larger blogs. Having multiple authors logging in many different blogs, it’s good to have your backend stand out. I may have to implement this