SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I'm trying to add fields (custom) to the business card. I want to use the default Person.aspx from SharePoint but I can't manipulate what fields I want to display. I've tried "User Profile Property" in CA without any luck.

I read a old question that the only way to add new fields is to make a new Person.aspx and then re-route. LINK - Adding fields in Business card @Wictor Wilen MCA MCM MVP do mention that the only way to add fields are to create a new Person.aspx site.

Then I thought, what if I just hide the "business card" with CSS and then rebuild it with JS (I don't want post-backs to the server). All the fields I need are in "ms-my-profileDetails" (ID) on the site, but without any class/ID.

My problem is that if a field is blank/empty it will not be listed. Since I don't get any ID / classes on the listed fields, I don't know what each fields are (name, phone, e-mail ..)

Is there a way to get ID / Class in the list (ms-my-profileDetails)??

If NO, what's the best way (without SharePoint Designer) to create a new Person.aspx?

share|improve this question
up vote 3 down vote accepted

Simply put, you can do this in visual studio:

Create a copy of person.aspx to _layouts

Redirect to the custom version using AdditionalPageHeaders delegate control

Remove/add in custom control templates


Profile properties are in this format:

<SPSWC:ProfilePropertyValue TitleMode="false" PropertyName="FirstName" runat="server"/>
<SPSWC:ProfilePropertyValue PropertyName="MyCustomProperty" runat="server"/>
share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.