none
Add New Tab to 'My Site horizontal navigation bar'

    Question

  • Hi.

    Using the "Personalization site links " I am adding a New Tab on the My Site between the My Home and My Profile . However, when I login to My Site and click on the New Tab it opens in a new window. 

    How can I add a new tab so that it opens within the same frame? Do I need to do anything special? BTW I am new in sharepoint so please be gentle.
    I googled around and found this link but I am not sure if this is the way to achieve this. http://blogs.msdn.com/sharepoint/archive/2007/03/22/customizing-moss-2007-my-sites-within-the-enterprise.aspx

    Thank you for your help.

    C
    nothing for members to see
    • Edited by cecilita Thursday, September 17, 2009 5:34 PM unnecesary info
    Thursday, September 17, 2009 4:29 PM

Answers

  • No, you have to create your own default.master page, which is still used by My Sites pages:

    SharePoint 2007, SharePoint 2010, and EPiServer CMS: Customizing My Site:
    http://sharepointbergen.blogspot.com/2007/04/customizing-my-site.html

    Basically, it's not as easy to customize My Sites pages as it is other pages that inherit from default.master.  You have to write a feature stapler to force My Sites to inherit from another master, as outlined in the two articles we are talking about.

    Once that is done, you can go about replacing or customizing the top navigation bar.
    Eric Legault: MVP (Outlook), MCTS (SharePoint) -- Owner, Collaborative Innovations (http://www.collaborativeinnovations.ca)
    Friday, September 18, 2009 6:41 PM
  • The feature staplers are explained pretty well in those articles.  The last one in particular is a good walkthrough for what you're trying to do.

    My Site customization was easy in the SharePoint 2003!
    Eric Legault: MVP (Outlook), MCTS (SharePoint) -- Owner, Collaborative Innovations (http://www.collaborativeinnovations.ca)
    Friday, September 18, 2009 8:54 PM

All replies

  • The MSDN article you references is a great place to start.  What you want to do exactly is customize the default.master page, following the guidelines and implementation requirements outlined there.

    The key for the change you want is the AspMenu control, which controls the top navigation bar.  You need to add the Target property to the control's schema, as detailed below and found in default.master:

    	<SharePoint:AspMenu
    	  ID="TopNavigationMenu"
    	  Runat="server"
    	  DataSourceID="topSiteMap"
    	  EnableViewState="false"
    	  AccessKey="<%$Resources:wss,navigation_accesskey%>"
    	  Orientation="Horizontal"
    	  StaticDisplayLevels="2"
    	  MaximumDynamicDisplayLevels="1"
    	  DynamicHorizontalOffset="0"
    	  StaticPopoutImageUrl="/_layouts/images/menudark.gif"
    	  StaticPopoutImageTextFormatString=""
    	  DynamicHoverStyle-BackColor="#CBE3F0"
    	  SkipLinkText=""
    	  StaticSubMenuIndent="0"
    	  Target="_blank"
    	  CssClass="ms-topNavContainer">
    	  <StaticMenuStyle/>
    	  <StaticMenuItemStyle CssClass="ms-topnav" ItemSpacing="0px"/>
    	  <StaticSelectedStyle CssClass="ms-topnavselected" />
    	  <StaticHoverStyle CssClass="ms-topNavHover" />
    	  <DynamicMenuStyle  BackColor="#F2F3F4" BorderColor="#A7B4CE" BorderWidth="1px"/>
    	  <DynamicMenuItemStyle CssClass="ms-topNavFlyOuts"/>
    	  <DynamicHoverStyle CssClass="ms-topNavFlyOutsHover"/>
    	  <DynamicSelectedStyle CssClass="ms-topNavFlyOutsSelected"/>
    	</SharePoint:AspMenu> 

    As for controlling the target destionation of a specific tab, that I'm not sure of at this point.
    Eric Legault: MVP (Outlook), MCTS (SharePoint) -- Owner, Collaborative Innovations (http://www.collaborativeinnovations.ca)
    Friday, September 18, 2009 2:53 AM
  • Hi Eric.

    Thank you for the reply. I am one step closer but many more to go. I now know where the menu is controlled, that's great.

    I understand that adding Target="_BLANK" will Open the linked document in a new window. That's not what I want to do.

    I guess I asked the wrong question...so here I will give it another try.

    I want to add a New Page let's call it "My Grades" between between My Home and My Profile on My Site . Here is the trick. I want the New Page to inherit everything that's on My Site. In other words I want to preserve the My home and My Profile on newly created My Grades page.  

    Do I need to create a New master page for My Grades? I hope your response helps others who are trying to do the same thing.


    Thanks

    nothing for members to see
    Friday, September 18, 2009 1:13 PM
  • I don't quite get exactly what you want to do or why, but you may need to replace that control and use your own if you want full control.

    Take a look at this article:

    Customizing Site Navigation:
    http://msdn.microsoft.com/en-us/library/ms471078.aspx
    Eric Legault: MVP (Outlook), MCTS (SharePoint) -- Owner, Collaborative Innovations (http://www.collaborativeinnovations.ca)
    Friday, September 18, 2009 3:18 PM
  • My apologies. I am brand new in sharepoint and consequently I don't have to correct Sharepoint lingo.

    I could be wrong but I think the link msdn link is for Team Sites and not for adding new items to My Site.

    Here is what I have done so far. I added a new Tab called "My Grades" on My Site by going to User Profiles and My Sites >> Add a personalization site link . followed instructions here. http://technet.microsoft.com/en-us/library/cc262973.aspx  See end result  here . This is all good. 

    The question is, it it possible to just duplicate the person.aspx from C:\Program Files\Common Files\Microsoft Shared\web server extensions\12\TEMPLATE\SiteTemplates\SPSMSITEHOST and call it, say, mycustomperson.aspx? Then add the URL to on the Add a personalization site link ?

    The reason I want to duplicate the person.aspx page is b/c it already  has code to handle the top nav bar and all and give a consistent look on my new page.
    (I actually duplicated the person.aspx but I get a 404 error page not found). 

    Does it make sense?

    thanks for reading.

    C

    PS. looks like someone has done something similar here. http://blogs.msdn.com/blogfiles/sharepoint/WindowsLiveWriter/55b5a51463bc_B9AC/image%7B0%7D%5B8%5D.png

    nothing for members to see
    Friday, September 18, 2009 5:40 PM
  • No, you have to create your own default.master page, which is still used by My Sites pages:

    SharePoint 2007, SharePoint 2010, and EPiServer CMS: Customizing My Site:
    http://sharepointbergen.blogspot.com/2007/04/customizing-my-site.html

    Basically, it's not as easy to customize My Sites pages as it is other pages that inherit from default.master.  You have to write a feature stapler to force My Sites to inherit from another master, as outlined in the two articles we are talking about.

    Once that is done, you can go about replacing or customizing the top navigation bar.
    Eric Legault: MVP (Outlook), MCTS (SharePoint) -- Owner, Collaborative Innovations (http://www.collaborativeinnovations.ca)
    Friday, September 18, 2009 6:41 PM
  • Hi Eric.

    I did run into this article couple of days ago but wasn't sure if this was the way to do. I will trying the 'Customizing My Site' link on Monday.

    I found these blog talking about the same thing http://vspug.com/mirjam/2007/05/22/adjusting-the-top-level-navigation-on-all-my-sites/ and
    the "solution" http://social.microsoft.com/Forums/en-US/sharepointcustomization/thread/c243283f-1e70-4c53-b406-a913c8448003
    which doesn't work for me.

    I have heard of " feature stapler" but have no idea what it is. I guess I have to pick up a book or something.

    You are correct, customizing My Sites pages is not easy. 

    Have a nice weekend.

    C

    PS. What do you think about this so called solution? Its sounds interesting.  http://blogs.msdn.com/alimaz/archive/2009/02/21/developing-a-custom-mysite-host-site-definition-using-vsewss-1-3.aspx


    nothing for members to see
    Friday, September 18, 2009 7:33 PM
  • The feature staplers are explained pretty well in those articles.  The last one in particular is a good walkthrough for what you're trying to do.

    My Site customization was easy in the SharePoint 2003!
    Eric Legault: MVP (Outlook), MCTS (SharePoint) -- Owner, Collaborative Innovations (http://www.collaborativeinnovations.ca)
    Friday, September 18, 2009 8:54 PM