// you’re reading...

SharePoint

Set the SharePoint Welcome Page through code

If you're new here, you may want to subscribe to my RSS feed. Thanks for visiting!

You might end up with this requirement quite often to set your custom page as a welcome page for site/subsite instead of default.aspx provided by SharePoint.

Its quite a tedious job to set up default pages manually when you have more than 10 site/subsites. Its pretty easy to do it programmatically. Here is how:

public static void SetDefaultPage(SPWeb web, string pageName)
{
    if (PublishingWeb.IsPublishingWeb(web))
    {
    PublishingWeb publishingWeb = PublishingWeb.GetPublishingWeb(web); 

    //Get the file name
    SPFile welcomeFile = web.GetFile(pageName);
    //Assign the new filename to the DefaultPage property
    publishingWeb.DefaultPage = welcomeFile; 

    //Update the Publishing Web.
    publishingWeb.Update();
    }
} 

Remember to pass the full relative path to the pageName. For example, pageName should be "/Subsite/Pages/MyNewWelcome.aspx" if your welcome page resides in a Page library of the subsite.

You might be interested in:
  • SharePoint 2007 Test Data Population Tool
  • SHAREPOINT DESIGNER 2007 IS NOW FREE!
  • Programmatically Delete all items from a SharePoint List
  • SharePoint - Add or Delete Site Column reference from Content Types
  • Review of: SharePoint Content Deployment Wizard
  • Discussion

    2 comments for “Set the SharePoint Welcome Page through code”

    1. Hi Praveen,

      Thanks for your post. It helped me!

      Posted by Raghavan | April 8, 2009, 8:01 am
    2. Thanks Raghavan. I am gald it was of help to you.

      Posted by Praveen Modi | April 8, 2009, 8:11 am

    Post a comment

    Spam Protection by WP-SpamFree Plugin

      Locations of visitors to this page
    View Praveen Modi's profile on LinkedIn

    Recent Comments

    • Praveen Modi: Juan, seems like it should work but I haven’t tried it. I will give it a try and will update the...
    • Juan Larios: couldn’t you just do: SPFolderCollection collection = site.Lists["Site Collection...
    • sara: Try this too, Delete item from SharePoint List and more
    • jayashri kanungo: The video is slow. Usually when you run it for first time, it takes time but for subsequent time it...
    • Robert Woodlock: Thank you, sorry to ask, but would i add code to have this function automated.. Basically I was to...