Sharepoint 2010定制网站模板时,由于操作时可能有一些不需要的功能历史信息,导出时会包含进wsp文件,如果部署到新的站点上,由于没有依赖会出错,此时我们可以通过手工简单的修改一下即可
模版制作
这个参考MSDN或使用Sharepoint Designer设计和导出即可
模版定制
1、在SPD中把网站保存为模版,注意以 如下形式 命名
如 http://***/demo/_layouts/savetmpl.aspx
文件名: demo
模板名称: 演示
模板说明: 演示站点模版
包含内容根据需要勾选
[这样命名修改和压缩时不用修改了]
2、在站点集根网站,解决方案中下载demo.wsp
3、使用winrar打开demo.wsp,并解压到一个独立的目录如本方案的pkg目录[cab.bat cab.ddf在一起]
4、修改不需要的依赖内容,主要有:
demoWebTemplate\demo\ONet.xml 删除不必要的Feature
demoListInstances\ElementsContentType.xml 删除不必要的内容类型
demoListInstances\ElementsFields.xml 删除不必要的字段
[产生以上信息的原因:导出的模版站点定制时新建了内容类型等,但SPD中删除不干净]
*****模版的ID和名称可读性修改
demoWebTemplate\Feature.xml 的内容修改如下
<Feature Id="{beaf1bd1-269d-4f25-bf98-d4b799d39f5c}" Title="##模版"
demoWebTemplate\Elements.xml 的内容修改如下
<WebTemplate 。。。 Description="##站点模版" Title="$$$" 。。/>
5、执行cab.bat进行打包,会生成出不依赖的demo.wsp
6、代码中的依赖处
如果使用代码建立这个模板形式的网站,只要把demo.wsp的GUID和代码一致起来就行
使用
具体wsp激活后,在站点集功能下: demo模版 这个Feature激活,此时可以使用这个模版新建站点
参考
cabsdk.exe MSDN官方的参考,包括makecab的格式详细说明
注:xsn文件和wsp都是这种格式,微软自定义的比zip压缩率更高的一种格式
MakeCab_GUI.exe
可以打开和查看wsp文件
注:另存出来的sharepoint不识别[文件头这个工具加了一些特殊信息]
附
cab.bat
makecab /f cab.ddf
cab.ddf
;
.OPTION EXPLICIT ; Generate errors
.Set CabinetNameTemplate=演示模板.wsp
;.set DiskDirectoryTemplate=CDROM ; All cabinets go in a single directory
.Set CompressionType=MSZIP;** All files are compressed in cabinet files
.Set UniqueFiles="ON"
.Set Cabinet=on
.Set DiskDirectory1=.
;Microsoft.LearningComponents.resources.dll Microsoft.LearningComponents.resources.dll
manifest.xml
demoListInstances\Elements.xml demoListInstances\Elements.xml
demoListInstances\ElementsContentType.xml demoListInstances\ElementsContentType.xml
demoListInstances\ElementsFields.xml demoListInstances\ElementsFields.xml
demoListInstances\Feature.xml demoListInstances\Feature.xml
demoListInstances\Files\busi\Schema.xml demoListInstances\Files\busi\Schema.xml
demoListInstances\Files\files\Schema.xml demoListInstances\Files\files\Schema.xml
demoListInstances\Files\Lists\elec\Schema.xml demoListInstances\Files\Lists\elec\Schema.xml
demoListInstances\Files\Lists\tasks\Schema.xml demoListInstances\Files\Lists\tasks\Schema.xml
demoListInstances\Files\order\Schema.xml demoListInstances\Files\order\Schema.xml
demoListInstances\Files\sched\Schema.xml demoListInstances\Files\sched\Schema.xml
demoListInstances\Files\_catalogs\masterpage\Schema.xml demoListInstances\Files\_catalogs\masterpage\Schema.xml
demoListInstances\resources\resources.zh-CN.resx demoListInstances\resources\resources.zh-CN.resx
demoListInstances\Files\_catalogs\fpdatasources\Schema.xml demoListInstances\Files\_catalogs\fpdatasources\Schema.xml
demoListInstances\Files\Lists\List\Schema.xml demoListInstances\Files\Lists\List\Schema.xml
demoListInstances\Files\Workflows\Schema.xml demoListInstances\Files\Workflows\Schema.xml
demoModules\Elements.xml demoModules\Elements.xml
demoModules\Feature.xml demoModules\Feature.xml
demoModules\resources\resources.zh-CN.resx demoModules\resources\resources.zh-CN.resx
demoModules\Files\Workflows\8\10_V1.vdw demoModules\Files\Workflows\8\10_V1.vdw
demoModules\Files\Workflows\8\11.xoml demoModules\Files\Workflows\8\11.xoml
demoModules\Files\Workflows\8\12.xoml.rules demoModules\Files\Workflows\8\12.xoml.rules
demoModules\Files\Workflows\8\13.xsn demoModules\Files\Workflows\8\13.xsn
demoModules\Files\Workflows\8\14.xsn demoModules\Files\Workflows\8\14.xsn
demoModules\Files\Workflows\8\7.xoml.wfconfig.xml demoModules\Files\Workflows\8\7.xoml.wfconfig.xml
demoModules\Files\Workflows\8\9.xsn demoModules\Files\Workflows\8\9.xsn
demoModules\Files\Workflows\16\15.xsn demoModules\Files\Workflows\16\15.xsn
demoModules\Files\Workflows\16\17.xsn demoModules\Files\Workflows\16\17.xsn
demoModules\Files\Workflows\16\18.xsn demoModules\Files\Workflows\16\18.xsn
demoModules\Files\Workflows\16\19.xoml.rules demoModules\Files\Workflows\16\19.xoml.rules
demoModules\Files\Workflows\16\20.xsn demoModules\Files\Workflows\16\20.xsn
demoModules\Files\Workflows\16\21_V1.vdw demoModules\Files\Workflows\16\21_V1.vdw
demoModules\Files\Workflows\16\22.xsn demoModules\Files\Workflows\16\22.xsn
demoModules\Files\Workflows\16\23.xoml demoModules\Files\Workflows\16\23.xoml
demoModules\Files\Workflows\16\24.xoml.wfconfig.xml demoModules\Files\Workflows\16\24.xoml.wfconfig.xml
demoModules\Files\Workflows\16\25.xsn demoModules\Files\Workflows\16\25.xsn
demoModules\Files\Workflows\16\26.xsn demoModules\Files\Workflows\16\26.xsn
demoModules\Files\Workflows\2\1.xoml demoModules\Files\Workflows\2\1.xoml
demoModules\Files\Workflows\2\3_V1.vdw demoModules\Files\Workflows\2\3_V1.vdw
demoModules\Files\Workflows\2\4.xsn demoModules\Files\Workflows\2\4.xsn
demoModules\Files\Workflows\2\5.xsn demoModules\Files\Workflows\2\5.xsn
demoModules\Files\Workflows\2\6.xoml.wfconfig.xml demoModules\Files\Workflows\2\6.xoml.wfconfig.xml
demoPropertyBags\Elements.xml demoPropertyBags\Elements.xml
demoPropertyBags\Feature.xml demoPropertyBags\Feature.xml
demoPropertyBags\resources\resources.zh-CN.resx demoPropertyBags\resources\resources.zh-CN.resx
demoWebTemplate\Elements.xml demoWebTemplate\Elements.xml
demoWebTemplate\Feature.xml demoWebTemplate\Feature.xml
demoWebTemplate\demo\ONet.xml demoWebTemplate\demo\ONet.xml
demoWebTemplate\resources\resources.zh-CN.resx demoWebTemplate\resources\resources.zh-CN.resx
demoWorkflows\Elements.xml demoWorkflows\Elements.xml
demoWorkflows\Feature.xml demoWorkflows\Feature.xml
demoWorkflows\resources\resources.zh-CN.resx demoWorkflows\resources\resources.zh-CN.resx
;*** <the end>