Skip to main content

Display user profile picture next to welcome name

Here is a simple way to add in the logged in users profile picture right before or after the users name in the SharePoint 2010 ribbon.

1.) Add the following to the top of your custom master page right before the doctype:
<%@ Register Tagprefix="SPSWC" Namespace="Microsoft.SharePoint.Portal.WebControls" Assembly="Microsoft.SharePoint.Portal, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>

image

2.) Add in the following control right before the welcome text:
<SPSWC:ProfilePropertyImage PropertyName="PictureUrl" style="float: left; height: 20px;" ShowPlaceholder="true" id="PictureUrlImage" runat="server"/>

image

A nice feature that you can customize is if you don’t want to show a placeholder image if a users has not uploaded a custom picture you can simply change ShowPlaceholder="true" to “false”. and it will only show a picture if someone has specified a custom one in their profile.

Before:
image

After:
image

If you want to have the image on the right simply move the control after the welcome and muiselctor controls, also remove the float:left in the picture style:
<wssuc:Welcome id="IdWelcome" runat="server" EnableViewState="false"></wssuc:Welcome>

<wssuc:MUISelector ID="IdMuiSelector" runat="server"/>

<SPSWC:ProfilePropertyImage PropertyName="PictureUrl" style="height: 20px;" ShowPlaceholder="true" id="PictureUrlImage" runat="server"/>

The 20px height is that golden number because any larger and the image will get cropped off on the bottom in IE7 and in IE8 you will start to see some separation and cropping of the ribbon when viewing the other ribbon tabs.

30px height:
image

20px Height:
image

The inline CSS above on the control is just to keep this blog post simple, Its recommended to move that inline style into your custom CSS file.

Comments

rob said…
Hello,

with this picture in place and the statusbar present i am trying to make the picture a link to the profile of the user currently logged in.

i managed to make the picture clickable and i can set the navigationUrl but i am looking for the link to the currentUser profile.

any thoughts?

with kind regards.
Naren said…
Hi,

Thanks for the post. I was wondering if this picture could be used on site pages other than the master page?

I keep getting an error saying Unknown server tag 'SPSWC:ProfilePropertyImage' despite adding the server tag prefix in the code. Any suggestions?
dennis said…
@ Naren,

Are you by any chance trying this on foundation rather than SharePoint Server?
Mugsy said…
This has SAVED me! Any suggestions on how to do this on the My Site pages?
Sayed Majid said…
Hi,
Thanks dear, I'm always getting User name and password each time I access the intranet the first time. is there any solution?
Brian McGrath said…
Rob - just use http:///person.aspx

Naren - Yes you can

Sayed - add your site to your trusted sites in IE OR switch to Kerberos
TSiggs said…
Noticed that when a user is viewing someone else's profile, instead of the currently logged in user the control displays the person's profile they are viewing. Looking for a workaround now...
Hi,

How to make Picture clickable one ? any ideas ... kindly suggest.

Thanks
Samo said…
hello, I've done this but unfortunately the displayed picture was the default one. i.e. the one which display if the user has no picture uploaded to his profile.

Any advice?
samo said…
Any replay, I'm using SP server 2010
Anonymous said…
Can this be done in Sharepoint Foundation as I seem to be getting the same problem as Naren?
Chakri said…
You can find SOLUTION here for foundation

http://chakrib.blogspot.in/2012/04/display-user-image-or-beside-welcome.html
Anonymous said…
Many Thanks Chakri.
Amin said…
well, no matter how many times i try it wont show it beside Current user,

i use Sharepoint server 2010,
before welcome after welcome ...

any suggestion?
Anonymous said…
Any idea how to make this work on My Sites? I am using feature stapling to staple my custom masterpage to the My Sites but I cant seem to get the image to appear next to the Welcome Menu...

The welcome menu is visible just the image is not and I have no idea what to do about it...Anyone have similar issues in My Sites?
Anonymous said…
I have three better ways to show the user image. You can find it on my blog: http://lixuan0125.wordpress.com/2012/06/11/display-user-profile-picture-next-to-welcome-name/
Priyanka said…
Very nice info , it works in SharePoint 2013 as well just change the version to 15.0.0.0

Thanks for the article !!!
Spandan-dpn said…
i am doing this on Office 365 site.
but issue is that image is getting fetched for first time. If i go to the 'My Profile' and return back then and only then image get displayed. How to solve this issue. I am getting User Information using JavaScript.
Great guide. I am clearly gonna use it. And maybe reblog it.
This is great......is there any way to make it work with WSS 3.0



Aparna
Bisi Ade said…
Hello,

Where do I insert the picture for sharepoint users.

Is there a place in Active Directory or SharePoint where I can upload the pictures for all users.

Thanks,

Bisi
Smita said…
This comment has been removed by the author.
Smita said…
Hi Eric,

I tried using the code in SPS 2013 but am getting following error:
Unknown server tag 'SPSWC:ProfilePropertyImage'

Following are the steps that I followed:
1. I edited "Seattle.html" page to add code in !--SPM: -- tag


When I checked the seattle.master page I saw that the first piece of code is not in the file.

Where am I going wrong?
Bisi Ade said…
This comment has been removed by the author.
Bisi Ade said…
Hi,

I used this on my new productivity hub site and it throws up an error "<asp:Literal' is not a valid virtual path."

The path references java script for the hub site.

How can I get rid of this error?

Thanks,

Bisi
aparna john said…
Hi,I wont reveal which ones I use in this article but I do have 3 different programs I use for Web Design Cochin. One I use to create pages from scratch, one I use to fix web pages that are messed up and the third one I use is one of the step by step software programs.Thanks....
SMARTYROSE said…
How can we add this userprofile image in sharepoint2013 masterpage.I am also facing the same issue which smita reported.
Kyle Goulding said…
Hi,

I have a slight problem with displaying the photo - when accessing mySite and view a different users profile the photo changes from the logged in user i.e. me to display the profile photo of the user who's profile I am viewing. Do you know how to get around this?

Thanks in advance

Popular posts from this blog

How To: Hide Left Side Navigation on Home Page

I was recently asked: "How can I hide the side nav bar on the main homepage layout ?? I want to be able to use the side NAV with in the team site etc etc, but I don't want it on the front page.. " There are a couple of ways to do this in SharePoint 2010. If you are using a non-publishing site you can add a Content Editor Web Part to the page and add the following to the HTML Source.
<Style>
body #s4-leftpanel
{
display: none;
}
.s4-ca
{
margin-left: 0px;
}
</style>
Basically the CSS above hides the left navigation Div, and then sets the content area to not have a left margin. Once you are done, simply modify the web part and hide it on the page. If you are using a publishing site for your homepage simply add the same styles specified above to a custom page layout. That way if you have a need for other pages that do not need the left side navigation you can re-use the page layout.

Small Calendar for SharePoint 2010 & 2013

First off I would like to apologize for the lack of posts. I have been really busy with my new role as the UX Design lead within Slalom Consulting Boston. I will share more about that in another post. In a previous post Create Really Small Calendar I showcased how to do this for SharePoint 2007. However the 2010 and 2013 calendar views have changed and therefore we cannot use the same method or CSS as 2007.SharePoint 2010 Small Calendar:
SharePoint 2013 Small Calendar:
See video below for a video walk through on how to create a small calendar for SharePoint 2010 and & SharePoint 2013 with just CSS.Per the video above here is the code that I referenced:2010 CSS link reference in Master Page:
<SharePoint:CssRegistration name="<% $SPUrl:~sitecollection/Style Library/smallcalendar.css %>" After="corev4.css" runat="server"/>2010 CSS:
/**** Small Calendar ***/
.ms-acal-item{height: 10px !important;}
.ms-acal-sdiv,
.ms-acal-mdiv,
.ms-…

SharePoint 2010 Base CSS Classes

This will be the first of many SharePoint 2010 posts. I will be focusing on a few of the main CSS classes used for SharePoint 2010 Public Beta. As the product becomes more final there might be some changes to the class names but I will be sure to create a new post if that happens. This will be quite a lengthy but it should be helpful. The default CSS given below are just highlights of the full CSS attributes for that class.I will be using a basic team site as my base for the screenshots. Here is a basic structure of the main areas that I will cover.Ribbon RowTable Row Left Site Actions Navigate Up Edit Tab List Browse Page Table Row Right Give Feedback Welcome Menu WorkspaceBody Container Title Row Title Title Logo Title Text / BreadcrumbPage DescriptionSocial Data SeparatorI like It Tags/Notes Top Header 2/Top Links li Static-Selected li Static SearchHelpStatus Bar Container Main A…