我已在SharePoint onet.xml文件中更新了网站定义,因此在网页上创建的网站没有特定的网页。
但是我读过,只有在首次创建站点时才会读取onet.xml文件。
我是否有办法让现有网站刷新?
即使通过代码,循环遍历每个站点并进行更改也不是真正的蠢事。
答案 0 :(得分:1)
我认为从代码遍历每个站点是非常实用的?手动执行可能不是。
如果安装stsadm扩展,您甚至可能不需要编写代码。 例如,您可以使用this command删除项目,并且它具有使用。
枚举网站的命令答案 1 :(得分:1)
没有其他选项可以将对onet.xml所做的更改同步,以反映在基于onet.xml创建的现有站点中。
答案 2 :(得分:1)
不要修改 onet.xml,因为在更新sharepoint时可以覆盖此文件!
如果要更新SPWeb,循环使用SPSite.AllWebs并不是不切实际的。当然,如果每次项目或其他任何更改都运行此代码,那将是不切实际的,但如果您只需要偶尔触发此代码,那么这不是问题。
哦,对,但是如果你添加新网可能会有问题。好吧,Kusek已经为您提供了answer:
你可以做的另一个替代方案是 你可以创建一个功能 配置网页文件并激活 它在每个网络中。
这叫做feature stapling。在创建Web时激活您的功能并对该Web进行修改。