Функция для автоматического применения главной страницы
-
16-10-2019 - |
Вопрос
У меня есть пользовательская главная страница, применяемая к моей коллекции сайтов. Когда я создаю новый подзаимный сайт, он не поставляется с этой пользовательской главной страницей, применяемой к нему. Я всегда могу перейти к /_Layouts/changeSitemasterPage.aspx на моем корневом сайте и проверить параметры «Сбросить все субситы, чтобы унаследовать эту настройку мастер -страницы сайта», и он будет применять один и тот же мастер к каждому отдельному дослугам.
Я пытаюсь создать функцию, которая автоматически делает это, когда я создаю новый дочерний. Это возможно, что можно сделать?
Решение
1) Создать функцию с приемником событий
public class CustomFeatureReceiver : Microsoft.SharePoint.SPFeatureReceiver {
public override void FeatureActivated(SPFeatureReceiverProperties properties)
using(SPSite site = new SPSite("")) {
using(SPWeb web = site.OpenWeb("")) {
string url += "_catalogs/masterpage/custom.main.master";
web.CustomMasterUrl = url;
web.MasterUrl = url;
web.Update();
}
}
}
}
2) Создайте другую функцию и скрепите свою первую функцию в определение сайта
http://msdn.microsoft.com/en-us/library/bb861862(office.12).aspx
3) или создайте пользовательское определение сайта с вашей функцией
Другие советы
Если вы откроете галерею главной страницы в Designer SharePoint, вы должны установить главную страницу по умолчанию на вашем сайте, что, я думаю, должно установить все вновь созданные субситы для использования этой главной страницы.