我想知道是否有办法更新所有网站主页以显示新的自定义网页部件。
我有一个包含100多个子网站的网站集,我创建了一个自定义网页部件,我想在所有网站主页中显示..你建议做什么是最好的方法,就像手动这样做需要相当长的时间吗?!
答案 0 :(得分:0)
首先编写代码,以编程方式将webpart添加到单个主页。有关如何执行此操作的具体信息将根据您的主页的结构,是否为发布页面等而有所不同。这很可能,但实现可能会有所不同。你可能会使用类似的东西:
using(SPSite site = new SPSite("http://localhost"))
using(SPWeb web = site.RootWeb)
{
web.AllowUnsafeUpdates = true;
SPLimitedWebPartManager webParts = web.GetLimitedWebPartManager("Pagees/Home.aspx"
, System.Web.UI.WebControls.WebParts.PersonalizationScope.Shared);
MyWebPart wp = new MyWebPart(); // your custom webpart
wp.Title = "My WebPart";
webParts.AddWebPart(wp, "Left", 0);
webParts.SaveChanges(wp);
}
在线搜索主题时有很多变化。
完成后,您可以创建控制台应用程序或要在顶级站点上执行的功能,打开每个子站点,然后执行上述代码。