Social media is the new rage, and design is shortly behind that. In fact, plenty of folks are putting huge emphasis on both when it comes to their website.
So you beasking… “How can I add social media icons to my website?”
Well the answer is simple, and I’m here to tell you just how easy it is to do. Follow the steps below, and in no time – you’ll be sporting some super cool icons.
(This tutorial assumes that you are using the Genesis Framework for your site.)
Download Social Media Icons
Head on over to StudioPress and download the Social Media Icons graphics set.
The social media icons package will come with PSD files, in addition to pre-made transparent PNG files for each icon size – 48×48, 32×32 and 24×24.
Choose the Size and Upload to Your Server
The next thing you need to do is determine which size social media icons you want to display. Copy those files to your child theme’s images folder.
For instance, if you want to display the 32px social media icons, copy these files:
- 32x32_facebook.png
- 32x32_googleplus.png
- 32x32_linkedin.png
- 32x32_pinterest.png
- 32x32_rss.png
- 32x32_twitter.png
Create a Custom Menu for Your Icons
Inside your WordPress dashboard, go to Appearance > Menus and create a custom menu. Go to the Screen Options tab in the upper right hand corner of your screen and make sure you have the “CSS classes” option enabled.
You need to create Custom Menu links for the Facebook, Twitter and RSS icons. In the input box for CSS Classes, use social-facebook, social-googleplus, social-linkedin, social-pinterest, social-rss and social-twitter for your Facebook, Pinterest, RSS and Twitter icon links.
Here’s an example of how your custom menu link would look:

Add Styling for Your Icons
Lastly, you’ll want to define how your social media icons will look. Below is sample CSS for the icons, and you can edit the code according to your needs.
Please note the #header in the CSS, as this is written if you are displaying the icons in your header right widget area. For your sidebar or footer, you’ll have to modify the CSS to reflect that.
/* Social Media Icons
------------------------------------------------------------ */
#header ul li.social-facebook,
#header ul li.social-googleplus,
#header ul li.social-linkedin,
#header ul li.social-pinterest,
#header ul li.social-rss,
#header ul li.social-twitter {
float: left;
}
#header ul li.social-facebook a,
#header ul li.social-facebook a:hover,
#header ul li.social-googleplus a,
#header ul li.social-googleplus a:hover,
#header ul li.social-linkedin a,
#header ul li.social-linkedin a:hover,
#header ul li.social-pinterest a,
#header ul li.social-pinterest a:hover,
#header ul li.social-rss a,
#header ul li.social-rss a:hover,
#header ul li.social-twitter a,
#header ul li.social-twitter a:hover {
display: block;
height: 32px;
margin: 0 0 0 10px;
padding: 0;
text-indent: -9999px;
width: 32px;
}
#header ul li.social-facebook a {
background: #333 url(images/32x32_facebook.png);
}
#header ul li.social-facebook a:hover {
background: #000 url(images/32x32_facebook.png);
}
#header ul li.social-googleplus a {
background: #333 url(images/32x32_googleplus.png);
}
#header ul li.social-googleplus a:hover {
background: #000 url(images/32x32_googleplus.png);
}
#header ul li.social-linkedin a {
background: #333 url(images/32x32_linkedin.png);
}
#header ul li.social-linkedin a:hover {
background: #000 url(images/32x32_linkedin.png);
}
#header ul li.social-pinterest a {
background: #333 url(images/32x32_pinterest.png);
}
#header ul li.social-pinterest a:hover {
background: #000 url(images/32x32_pinterest.png);
}
#header ul li.social-rss a {
background: #333 url(images/32x32_rss.png);
}
#header ul li.social-rss a:hover {
background: #000 url(images/32x32_rss.png);
}
#header ul li.social-twitter a {
background: #333 url(images/32x32_twitter.png);
}
#header ul li.social-twitter a:hover {
background: #000 url(images/32x32_twitter.png);
}
Too funny, I was just doing this to the Corporate theme this morning. Only I used your Social media plugin – looks like this way would give me more control…. Now I know what I’ll be doing this afternoon!
Thanks for the timely tip!
Great to hear Tess – the hope is to give people a quick “how-to” add social media icons. Believe it or not, this is one of the most requested (generic) tutorials I’ve had with Genesis.
Hi Brian,
Do I copy and paste the code in my css file? Please clarify thanks
Yes, you do.
Loving these tips Brian!
Loving (to write) these tips!
rocker!
Hi Brian
I used Nathan’s Social Icons plugin – creates a social icons widget.
If the plugin wasn’t so brilliant… I would use your code.
Appreciate the tutorial
Are you referring to the Social Profiles widget?
The code I provided allows you to define background colors for the links/hovers – see my footer for example.
Both are quality to use, just a matter of which you prefer. (ie. Honda vs. Toyota)
“Are you referring to the Social Profiles widget?”
That’s the one.
“…see my footer for example.”
Oh yes, red and black, I like that.
You have no idea how much I appreciate you sharing this information. Now I won’t have to go on Elance and hire someone to this very task. I can just do it myself. Thanks again.
Awesome to hear Robert – got any other “I wish I knew how-to’s” to report. Happy to write tutorials upon request.
Hi Brian,
Actually yes. How do you really get the social media snowball rolling if you really have difficulty finding things to post about other than business related content.
I would really appreciate a piece on that.
Interesting, I like this method much better than the widget. However, the limited number of social icons is going to make me hunt for new ones. Why the small number of icons?
We can include more – at the time we created them, we were exclusively using them on our Luscious theme, which really only warranted those four.
Thanks for the great tip!
I, too, love the Social Profiles widget. Any idea if both (your tip, and the widget) will be getting updated with the latest social media icons (G+, YouTube, etc.)?
Thanks!
The problem with the Social Profiles widget is that we used icons from another source and are at their “mercy” for making those new icons avaialble
Hi Brian,
The code you provide is awesome but I want to add these social media icons on the left side of single post pages on my site. just like this website e.g. http://www.chrisbrogan.com/those-not-performing/
I don’t know how to add them their. Would appreciate your help.
Regards,
Chris Brogan is using the GetSocial plugin for WordPress to do display those icons.
Can I add these icons any where in my child theme? What would the hook or code be to place them in a page template?
They are meant to be used with a custom menu, so in a place such as the header right section.
Thank you Brian for the information. This method of doing things – using wordpress functionality to add content (together with Genesis) makes it easier to “modularize” a website for multiple projects. I’m quote obsessed with website customization but not at the expense of ease of use and installation. I’m now a fan and looking forward to more links or resources pertaining to this strategy.
Brian,
Got these up and running on my site: lukemcfadden.com.
Question: Is there a way to reload the images, when I mouseover them, it takes a bit for them to load.
Woops, I meant “preload”, not reload.
Brian,
Thank you for the terrific ease with which was done. In less than two minutes I was up and running with the icons–thanks!
I would, however, like to see the icons flush to the right edge of Header Right — just like you have them. However, vertically centered within the height of the header area.
I’ve tried a number of tweaks in the CSS to make that happen, but it hasn’t worked. I’m guessing it can’t be done doing the social icons as a custom nav menu?
dt
Hey Dan – looks like you got it?
Can you please add LinkedIn and Google+ to this set?
I’ll talk to Rafal our designer to see if he can update the social media icons pack with those.
Just wanted to follow up that we’ve included the two icons you requested and updated the zip file and tutorial.
Hi Brian,
One more request, is a Tumblr icon possible too?
Best,
J
I’ll check with Rafal on that one…
Hi Brian!
You’re awesome! Thanks so much!
May you wanna know a little mistake in the css above code:
there’s a mismatch in the image’s name
Just here:
#header ul li.social-linkedin a {
background: #333 url(images/32x32_facebook.png);
}
Good Luck!
there’s a image name mismach
Thanks – bad copy and paste job on my part and it’s been corrected!
Youtube, vimeo, and a simple email icon would be great too!
And don’t forget… only kidding. LOL
Total newbie here… can you explain where I put the CSS script?
Are you talking about the section of code in the Add Styling for Your Icons section?
Yes I am. I have all the same settings as is in the code – same size, same file names, and I am wondering how to put it in the header section as the code is written for. I’ve tried using a text widget and inserting the code into that but it isn’t working so I know I must be doing something wrong.
I’m having the same issue. Please let me know of you figure it out.
Thanks!
You need to be using the WordPress Custom Menu feature to implement the social media icons, and not a text widget.
Yes, but where does the section of code go to make the custom menu work?
If you place the CSS in the style.css file, and add the CSS classes in the custom menu option box, that’s all you’ll need to do. If you can link to your site, that would be helpful.
Hi
I have enabled the RSS Feed Links under Primary Navigation in the Genesis Theme Settings. These I can use with Feedburner.
Ideally, I would want to place say my, similarly sized twitter icon along side these. Would I create custom menu as you have outlined?
I am happy to hack php or use Simple Hooks if this is required ( after a full backup)
Yes, if you’d rather have those links go to Feedburner, rather than the native WordPress RSS links, a custom menu item would be the way to go.
I have the same question as Liesl…where do I copy/paste the code you provided?
Brian
When adding to the header right , it takes on the background color of the header menu.
How can I change this?
I tried .custom-menu, .social-menu and a number of others and no luck.
Thanks
Mike
Can you leave the link to your site so I can see what’s going on?
Sorry
http://publishing.usemarketing.com
Thanks
Hi Brian, how do I hard-code the icons below the footer like your site?
I think I’m half way there, I just need an example of the code I would use in function.php. I already used this tutorial to override the existing footer.
http://www.studiopress.com/tutorials/customize-footer#credits
I just don’t know what code to use to get the icons aligned to the right like yours. Thanks man!
Here’s the code I placed into my functions file:
Obviously each image has a class assigned to it, which you can Firebug and grab the CSS for each icon.
Brian,
Thanks for the awesome theme and awesome tutorial. My questions is – if you want to add these to a sidebar widget instead of the header right space, how does the snippet of code need to be modified?
Thanks,
Brock
If you wanted to use this in the sidebar, you’d have to follow the same steps, but adjust the CSS from all instances of #header to #sidebar.
Hi Brian!
Love this tutorial, but I got lost in the “Add Styling For Your Icons” section. Just exactly where do I put the CSS script? Am I supposed to copy and paste all that in the css folder? I had the link show up on my nav bar, but I want the images. See http://www.jwsocialmedia.com.
Thanks much!
Jocelyn
Hey Jocelyn – you need to add the CSS elements to the eleven40 child theme’s style.css file. You can simply place it at the bottom if you want.
OK, baby steps…
I opened the eleven40 child theme’s style.css file in Dreamweaver, then copied and pasted the above script to the very bottom/last line of the .css file. Is that correct? And now what do I do?
Thanks!
I am having the same issue. I went into my dashboard –> themes—> editor and added the copy to the very bottom as instructed above. Is the style.css file something else? The links populate in the navigation bar but the icons are not visible. Please advise. Thanks!
Did you add the custom class to the menu? That’s where it needs to occur.
Yes, I believe so. under custom menu, correct? I entered the URL, navigation label and CSS claases (social-googleplus) for each. I did not enter the title attribute.
Ah, you’re trying to put these in your main navigation bar? The tutorial was written to add them to the header right widget area, which is why they aren’t showing.
I Mirrored the example image (Twitter) under the create a custom menu step.
I was able to add it on the footer per this tutorial: http://www.studiopress.com/support/showthread.php?t=88809
However, I’m not able to add it on the navigation bar on top. Which is what I’m wanting to do as well. And as Jacyn stated, I’m having the issue of only texts showing up instead of the social media icons.
I even tried replacing the codes with “header” instead of “footer” and still no go. Any ideas?
It would be really nice if this functionality can be added to Genesis framework, just a basic plugin would work. If some one wants to customize it then they can modify accordingly to suit their need.
thanks.
We just released the Simple Social Icons plugin yesterday.
Hi Brian,
Thanks so much for the tutorial! Followed right along and using this for my navigation bar.
My question is, how could I get it to show the navigation label as well. Having an icon AND text?
Thanks a million!
That’s kind of a loaded question Will, as it’s really not an easy thing to explain. You can try removing the text-indent: -9999px; from the CSS given, and go from there.
Thanks for the reply Brian. I was able to get figured out. Thanks again for this post.
Wondering how I can position these to the right of the main menu, where date, RSS, Search & Twitter can now be added if enable extras are enabled.
Also wondering why link text appears over the icons when I put the widget in Header Right? This link text does not appear when the widget is placed in other areas of the site. http://66.147.244.50/~proflowc/test
We actually just created a new plugin for displaying the social media icons – check it out and try that!
Whoohooo! Love you Brian! That made me happy! I even changed the colors. Easy peasy!!!!
))
Guess what…Some of the icons do not show up on my iPad. Any idea why?
Which ones in particular?
On both my iPad and iPhone, all the squares are visible….but the logos on some aren’t. The only logos visible are for email, G+ and StumbleUpon. All the rest are just black squares. The links work, however.
Now that you’re using the Simple Social Icons plugin, you can go in and remove all of the CSS that’s under this section of your stylesheet:
/* Header Social Icons
———————————————————— */
Done. But that still didn’t fix it. I even removed the widget and re-added.
Looking at the bottom of your stylesheet, I still see the social media icons CSS.
Got it! You’re so smart Brian! I must have added that code twice. Thank you!
I probably am missing something obvious, but I haven’t been able to get the same results using the CSS and custom menu. I’m using the Balance theme; I don’t know if that makes a difference. I’m also using my own icons rather than a purchased set. I thought I would ask for help before I break something in the CSS and have to start from the very beginning. My site is http://www.writerightwords.com. Please ignore how ugly it is. I’m still in the early stages of building it.
Hey Erin, I saw your tweet and responded to it. In case you missed it, try the new Simple Social Icons plugin we created.
Nathan’s social plugin is great, thank you for offering it to the community. I have this silly block on something. The icon and hover colors may be determined in the widget itself which is very useful – the less coding the better. But these color attributes apply to all the icons. Which CSS file do I modify to determine different colours for different icons, whilst still using Nathan’s plugin? I have read through your post and comments and there is something I just don’t understand. Thank you very much for your clarification (no need to be detailed, just point me in the right direction). Doris
We had talked about whether or not to offer different colors for different icons. While we originally liked the idea, we decided that it would make the UI of the widget not so great for user experience. I am planning on writing a follow up tutorial to this post with how to use the new plugin, and I will include how to add custom css to for making individual colors for social media icons.
I am using Magazine Basic as my theme – Will I be able to place these icons in my header using a different theme than Genesis. I also do not see the “CSS classes” option enabled anywhere after I click the + sign to create a new menu???
If I just copy your code above how do I create the hyperlinks to my social media accounts?
Thanks
Try using the new Simple Social Icons plugin that we recently released instead of what you see here.
Thanks so much Brian. Worked like a charm – beautiful social icon now in a custom menu!
Glad to hear it Gary!
i’m trying to add this to my style.css, here is what i have:
/* Social Media Icons
———————————————————— */
#footer ul li.social-facebook,
#footer ul li.social-twitter,
#footer ul li.social-tumblr,
#footer ul li.social-pinterest,
{
float: left;
}
#footer ul li.social-facebook a,
#footer ul li.social-facebook a:hover,
#footer ul li.social-twitter a,
#footer ul li.social-twitter a:hover,
#footer ul li.social-tumblr a,
#footer ul li.social-tumblr a:hover,
#footer ul li.social-pinterest a,
#footer ul li.social-pinterest a:hover,
{
display: block;
height: 50px;
margin: 0 0 0 10px;
padding: 0;
text-indent: -9999px;
width: 50px;
}
#footer ul li.social-facebook a {
background: #333 url(resource/rsrc/uploads//2012/04/50x50facebook-icon.jpg);
}
#footer ul li.social-facebook a:hover {
background: #000 url(resource/rsrc/uploads//2012/04/50x50facebook-icon.jpg);
}
#footer ul li.social-twitter a {
background: #333 url(resource/rsrc/uploads//2012/04/50x50twitter_icon.jpg);
}
#footer ul li.social-twitter a:hover {
background: #000 url(resource/rsrc/uploads//2012/04/50x50twitter_icon.jpg);
}
#footer ul li.social-tumblr a {
background: #333 url(resource/rsrc/uploads//2012/04/50x50tumblr_icon.jpg);
}
#footer ul li.social-tumblr a:hover {
background: #000 url(resource/rsrc/uploads//2012/04/50x50tumblr_icon.jpg);
}
#footer ul li.social-pinterest a {
background: #333 url(resource/rsrc/uploads//2012/04/50x50pinterest_icon.jpg);
}
#footer ul li.social-pinterest a:hover {
background: #000 url(resource/rsrc/uploads//2012/04/50x50pinterest_icon.jpg);
}
and i’ve added to the bottom, and i’ve added it under ‘footer’ and no avail.
i would use your widget but you don’t have tumblr as an option. help! thanks.
-diana
Ack, Diana – so sorry I missed this comment. It was buried in my spam folder.
I took a look at your site, and it looks like you’ve got some icons in the footer. Did you manage to figure it out?
Hi Brian, I have the new plug in but my client needs the icons to align with the main navigation bar instead of the right header, can you help? Thank you
I’d have to see it in action – can you provide a link?
Hey Brian,
Thanks for the post! However, I’m not seeing the results after updating my style sheet (CSS). Is this something that takes a minute or two to propagate?
There shouldn’t be. Can you leave a link to your site?
http://www.nikkiarana.com/ Thank you for taking a look Brian!
Thank you, Brian, for taking the time to post this. EXACTLY what I needed to float a few social icons off to the right of my primary navigation search form. LOVE Genesis…you rock!
Hi Brian, I’ve added the code to the editor part of the Dashboard and still don’t see the icons on the page. Can you please tell me what I’m doing incorrectly? Thanks!
What part of your site are you trying to make these icons appear?
Hi! Sorry I didn’t see this until now. I’ve fixed the problem. Thanks for your reply anyway.
Your the man and thank you for sharing this with us! I was previously trying to put my social icons in a text widget in the footer, but this approach makes the process truly seamless. Genesis for president! lol.
Hi Brian,
I forgot to mention that I’m using the Luscious Theme. I don’t know if that makes a difference. Thanks!
Hi Brian,
I want to place the icons at the footer, in the middle section, between the “return to top” and copyright text. How can I do this? (http://dev.zilveticomm.com)
Thanks in advance for your help.
This is kind of a loaded question, and one better suited to address at the StudioPress forums.
Thanks Brian. Which section do I put it under? General discussion or Child themes?
Put it under the appropriate child theme forum that you are using.
Great stuff Brian, using CSS Classes in WordPress menu is the best method…
Are you allowed to stylize the social media icons? In other words, can you change the look of the twitter icon itself or is this against twitter policy?
You can change it, but you’d have to replace the icon inside the plugin, which would get overwritten in a plugin update.
Hi Brian
I am working on a site locally and downloaded your social plugin. I am using the optimal child theme. I can place the socials with no problem in the header or footer. However, I cannot seperately customize them. In another words I want the icons on the header to be 48px and footer to be 32px and for some reason this cannot be done. If I change one area it effects the other. Can you please help.
Brian, how do I write the code for a DONATE button in the header menu in Family Tree theme? I’d like to display it where the menus (yeah, they are added as custom menus, I know) that say for “mommybloggers, for scrapbookers, for photographers” shows.
Is there a easier way to do this using a widget?
Hi Brian,
Many thanks for this tutorial. However, I’m having trouble adding the social media icons to the footer section of my website. I have replaced all instances of #header with #footer and have followed the instructions in the above tutorial step-by-step, including adding the custom classes.
All I see on my site is the text links, NOT the social icons. Would you be kind enough to take a look? As a side note, I don’t use the Simple Social Icons plugin because the icons don’t align properly to the left… there’s always about a 5px indent.
Thanks again,
Connor
Hey Connor – can you do me a favor and link me to the page you are having this issue with?
I like this icon pack. I put it on my blog. Is there a Vimeo icon? Thanks!
Hi Brian!
This tutorial was perfect – however my theme (quattro) has stars for the list icon and I can’t figure out how to take them out while adding in the social media icons.
Thanks!
Julie
Try adding the following CSS:
To this in your style sheet in this section:
You might also need to add this:
To this:
I never tried CSS classed in menu, will try this time, thanks for sharing this tutorial.
Hi Brian,
I’ve been looking for specific icons to add to a sidebar bar area, Yelp, OpenTable, and Vimeo. I had already downloaded the Simple Social Icons plugin, it works and looks great but the icons that I’m currently looking for are not included. I have searched all over and have found nothing suitable. I’m new at webdesign and WordPress. I only use Studiopress themes and themes from its community. I am concerned about altering code and the effect it may have on a responsive theme and new theme versions? How would the code differ above if I wanted to add icons to a side bar? Any suggestions where I could find suitable icons for Yelp, OpenTable, and Vimeo for the method above? Thanks in advance for any help! Rob
The only way to get those icons into the plugin we’ve built is to hack the plugin. The downside of course is that it would get overwritten in a plugin update, but it might be worth the risk as it’ll probably be a while before we do the update.
Hello Brian,
I followed the steps above to see what this would look like in my sidebar, the only problem I’m having is that the two icons I’m using appear one on top of the other? How can get them to appear side by side? How many of these icons could I have sized at 32×32 displayed side by side in the sidebar? And lastly could I simply replace the icon images with my own, will this effect the way they are set up to work? Thanks for any help!!!
Hi Brian,
I went through the steps and the FB icon came up once, then I went back to put up the other icons, now I can not get the images back up, I can only get the word Facebook in the nav menu. Any ideas?
http://www.Christine-Walker.com/design
Thanks
Hey Christine – sorry for the delay in response, your comment got marked as spam for some reason. Did you get this resolved?
Thanks, Brian. This is great! I would love to know how to add these icons to each post as well as post excerpts on my blog page. I have tried numerous plugins and none of them pull the correct post. They all seem to pull the first post on the page. You can also forget finding a social plugin that validates. That’s a real nightmare! Thanks!
That’s actually another beast, and better served by using a social share plugin.
Whats the best way to go about adding a few of my own here. I’d like to have iTunes icons be added this plugin from the PRL set.
http://paulrobertlloyd.com/2009/06/social_media_icons/
Brian I was looking for quite some time to find this kind of tutorials. Just one question, how can I add those icons on the same line in sidebar?
I dont’ want to use plugins, because they are slowing the loading time of websites.
Try using the Simple Social Icons plugin we built — it’s very lightweight and shouldn’t affect your load time.
Hi Brian , could you please have a look , why I can’t get the Youtube Icon to Appear in My Footer – I thought I have done everything right, but it seems to have some issue somewhere.
Also Thanks for your Awesome Tutorials – I’m really enjoying them
It doesn’t look like you have any CSS written for the YouTube link for the social media icons.
Thanks Brian, there’s a good reason you keep coming up number one in Google searches when I need help!
Heh, well that’s great to hear!
Hi Brian!
Love this tutorial! I have a client who wants their header/nav bar to be combined like this example: http://gatlinburg.com
The logo is the “home” button in the center. Can I use this tutorial to do that on the LifeStyle theme? The site I’m working on right now is http://test2.maryhess.com
Thanks!
Just got the hang of it. Figured I’d test this trick out on my friend’s site before going into my style sheet. Thanks for making such a cool product. I didn’t even know what a style sheet was a year ago. So that should tell you the directions you provided us with are spot on.
I followed your instructions and nothing is showing up. I’m trying to get my icons into the header. When I created my custom menu, it does say “your theme only supports one menu”, but I assumed that meant for navigation purposes. Does this mean I won’t be able to get the icons in my header using your tutorial?
What # value do I have to use to get the Icons to appear on my right of my Primary Nav bar?
Or if I use the Simple Social Icons plugin how do I make them appear in the same place.
This simple little task is causing me some problems.
Many Thanks
Roger
Would you consider adding ‘Yelp’ to a future update of your plugin?
It’s possible, we’ll see.