网站类型:Web 模板和网站定义
上次修改时间: 2011年2月2日
适用范围: SharePoint Foundation 2010
在 Microsoft SharePoint Foundation 中,如果用户通过用户界面 (UI) 创建网站,则可通过选择可以定义网站实例化方式的两种可能的基础类型之一来执行此操作:
网站定义配置(它是网站定义的一部分)
自定义 Web 模板
每种基础类型都确定列表、文件、Web 部件、功能或用于设置新 SharePoint Foundation 网站的相关设置等内容。
网站定义主要包括多个 XML 和 ASPX 文件,这些文件存储在前端 Web 服务器上 %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\SiteTemplates 目录下的相应文件夹中。
自定义 Web 模板存储在数据库中,具体来说,即存储在沙盒解决方案库中,并且是使用现有网站(是否包含特定内容均可)作为模型创建的。也就是说,自定义 Web 模板是自定义的可重用网站。
因为自定义 Web 模板 以现有网站为基础,所以在任何 SharePoint Foundation 部署中,至少第一个网站必须基于网站定义 中的特定配置而建立。
备注
在某种程度上,Web 模板在整个生命周期中继续依赖作为其最终基础的网站定义。因此,我们不支持更改或删除已用作网站创建基础的网站定义。此类更改可能会导致基于定义创建(或者基于以网站定义作为基础的 Web 模板创建)的网站无法正常工作,或者可能会阻止直接或间接基于网站定义创建新网站。有关 Microsoft 支持对网站定义进行哪些类型的自定义的详细信息,请参阅在 SharePoint 2003、2007 和 2010 中处理自定义网站定义和自定义区域定义时受支持和不受支持的方案。
在 SharePoint Foundation 对象模型中,SPCustomWebTemplate 可以表示网站定义(和配置)或自定义 Web 模板。
在协作应用程序标记语言 (CAML) 标记中,网站定义由以下两项的组合表示:
安装目录中 WebTemp*.xml 文件中的 Template 元素,该文件通常位于 %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\LCID\XML\ 下,其中 LCID 是语言/区域性的数字 ID,如 1033 表示英语。
安装目录中的 Onet.xml 文件,该文件通常位于 %ProgramFiles%\Common Files\Microsoft Shared\web server extensions\14\TEMPLATE\SiteTemplates\site_type\XML\ 下,其中 site_type 是网站定义的名称。因此,site_type 可以是"STS"、"MPS"、"BLOG"、"SGS"或者自定义网站类型的名称。
但是,此类网站定义实际上是包含一项或多项网站定义配置的配置组,其中每项配置都由 Template 元素的一个 Configuration 子元素表示。配置的详细信息存储在 Onet.xml 文件中的相应 Configuration 元素中。
相比较而言,自定义 Web 模板作为 .wsp 文件存储在 SharePoint Foundation 数据库中,并且在网站集的沙盒解决方案库中列出。可以将该文件复制到某文件夹中、将其扩展名更改为".cab",然后打开它。.wsp 文件包含一个 elements.xml 文件,在该文件中包含一个 WebTemplate 元素。.wsp 包中还包含一个 Onet.xml 文件,但是它比通常位于网站定义中的 Onet.xml 简单。
本节中的主题介绍如何创建自定义 Web 模板(首选方法)和自定义网站定义(在某些情况下必须创建)。