Применить пользовательскую мастер-страницу ко всем сайтам SP Foundation - PullRequest
1 голос
/ 01 апреля 2011

Я создал пользовательскую мастер-страницу, которая была развернута как функция. Я использую SP Foundation, а не SP Server.

Я активировал эту функцию, однако мастер-страница была применена только к сайтам верхнего уровня. Может кто-нибудь, пожалуйста, дайте мне знать, что я сделал неправильно с моим получателем событий.

   public override void FeatureActivated(SPFeatureReceiverProperties properties)
    {
        SPSite siteCollection = properties.Feature.Parent as SPSite;
        if (siteCollection != null)
        {
            SPWeb topLevelSite = siteCollection.RootWeb;

            // Calculate relative path to site from Web Application root.
            string WebAppRelativePath = topLevelSite.ServerRelativeUrl;
            if (!WebAppRelativePath.EndsWith("/"))
            {
                WebAppRelativePath += "/";
            }

            // Enumerate through each site and apply branding.
            foreach (SPWeb site in siteCollection.AllWebs)
            {
                site.MasterUrl = WebAppRelativePath + "_catalogs/masterpage/custom.master";
                site.CustomMasterUrl = WebAppRelativePath + "_catalogs/masterpage/custom.master";
                site.Update();
            }
        }
    }

Любая помощь будет отличной!

1 Ответ

0 голосов
/ 02 апреля 2011

Я искал эту тему сегодня, может быть, эта ссылка поможет вам http://www.beckybertram.com/oldblog/index.php?p=33&more=1&c=1&tb=1&pb=1

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...