在新版本的SharePoint中,用户定制的Feature可以默认的增加到站点中。当给Site Definition 增加一个Feature后,那么从这个Site Definition中创建的站点上,这个Feature就会自动可以使用。
这个功能允许开发者创建Features并把它们接入到任何一个Site Definition中。在上一个版本的SharePoint中,现在以Feature的形式发布的功能,需要在每一个使用该功能的Site Definition中注册和配置。现在不需要这样做了,因为Feature封装了所有发布的功能。
将Features加入到Site Definitions
步骤1:
打开Site Definition的ONET.XML
找到为Samle Team Site 配置的那一节,其XML描述如下:
<Configuration ID="0" Name="Default">
<Lists>
<List FeatureId="00BFEA71-E717-4E80-AA17-D<chmetcnv unitname="C" sourcevalue="0" hasspace="False" negative="False" numbertype="1" tcsc="0" w:st="on">0C</chmetcnv>71B360101" Type="101" Title="$Resources:core,shareddocuments_Title;" Url="$Resources:core,shareddocuments_Folder;" QuickLaunchUrl="$Resources:core,shareddocuments_Folder;/Forms/AllItems.aspx" />
<List FeatureId="00BFEA71<chmetcnv unitname="a" sourcevalue="6" hasspace="False" negative="True" numbertype="1" tcsc="0" w:st="on">-6A</chmetcnv>49-43FA-B535-D<chmetcnv unitname="C" sourcevalue="15" hasspace="False" negative="False" numbertype="1" tcsc="0" w:st="on">15C</chmetcnv>05500108" Type="108" Title="$Resources:core,discussions_Title;" Url="$Resources:core,lists_Folder;/$Resources:core,discussions_Folder;" QuickLaunchUrl="$Resources:core,lists_Folder;/$Resources:core,discussions_Folder;/AllItems.aspx" EmailAlias="$Resources:core,discussions_EmailAlias;" />
<List FeatureId="00BFEA71-D1CE-42de<chmetcnv unitname="C" sourcevalue="9" hasspace="False" negative="True" numbertype="1" tcsc="0" w:st="on">-9C</chmetcnv>63-A44004CE0104" Type="104" Title="$Resources:core,announceList;" Url="$Resources:core,lists_Folder;/$Resources:core,announce_Folder;">
<Data>
<Rows>
<Row>
<Field Name="Title">$Resources:onetid11;</Field>
<Field Name="Body">$Resources:onetid12;</Field>
<Field Name="Expires"><ows:TodayISO/></Field>
</Row>
</Rows>
</Data>
</List>
<List FeatureId="00BFEA71-2062<chmetcnv unitname="C" sourcevalue="426" hasspace="False" negative="True" numbertype="1" tcsc="0" w:st="on">-426C</chmetcnv>-90BF<chmetcnv unitname="C" sourcevalue="714" hasspace="False" negative="True" numbertype="1" tcsc="0" w:st="on">-714C</chmetcnv>59600103" Type="103" Title="$Resources:core,linksList;" Url="$Resources:core,lists_Folder;/$Resources:core,links_Folder;" />
<List FeatureId="00BFEA71-EC85-4903-972D-EBE475780106" Type="106" Title="$Resources:core,calendarList;" Url="$Resources:core,lists_Folder;/$Resources:core,calendar_Folder;" QuickLaunchUrl="$Resources:core,lists_Folder;/$Resources:core,calendar_Folder;/Calendar.aspx" EmailAlias="$Resources:core,calendar_EmailAlias;" />
<List FeatureId="00BFEA71-A83E-497E-9BA0<chmetcnv unitname="a" sourcevalue="7" hasspace="False" negative="True" numbertype="1" tcsc="0" w:st="on">-7A</chmetcnv><chmetcnv unitname="C" sourcevalue="5" hasspace="False" negative="False" numbertype="1" tcsc="0" w:st="on">5C</chmetcnv>597D0107" Type="107" Title="$Resources:core,taskList;" Url="$Resources:core,lists_Folder;/$Resources:core,tasks_Folder;" QuickLaunchUrl="$Resources:core,lists_Folder;/$Resources:core,tasks_Folder;/AllItems.aspx" />
</Lists>
<Modules>
<Module Name="Default" />
</Modules>
<SiteFeatures>
<!-- BasicWebParts Feature -->
<Feature ID="00BFEA71<chmetcnv unitname="C" sourcevalue="1" hasspace="False" negative="True" numbertype="1" tcsc="0" w:st="on">-1C</chmetcnv>5E<chmetcnv unitname="a" sourcevalue="4" hasspace="False" negative="True" numbertype="1" tcsc="0" w:st="on">-4A</chmetcnv>24-B310-BA<chmetcnv unitname="C" sourcevalue="51" hasspace="False" negative="False" numbertype="1" tcsc="0" w:st="on">51C</chmetcnv>3EB<chmetcnv unitname="a" sourcevalue="7" hasspace="False" negative="False" numbertype="1" tcsc="0" w:st="on">7A</chmetcnv>57" />
</SiteFeatures>
<WebFeatures>
<!-- TeamCollab Feature -->
<Feature ID="00BFEA71-4EA5-48D4-A4AD-7EA<chmetcnv unitname="C" sourcevalue="5" hasspace="False" negative="False" numbertype="1" tcsc="0" w:st="on">5C</chmetcnv>011ABE5" />
</WebFeatures>
</Configuration>
在<SiteFeatures>元素中增加如下的XML以把自己的定制的Document Library Feature加入:
<!-- Custom Common Document Library Feature -->
<Feature ID="<GUID OF YOUR FEATURE GOES HERE>" />
这个GUID和Feature.xml文件中GUID相对应。
步骤2:Reset IIS
步骤3:基于这个增加了Feature的站点定义创建一个新的站点。
创建完毕后在Site Features页面中会看到列表中有Custom Document Library Feature。按 Activeate 按钮可以激活这个Feature,激活后就可以基于这个Feature创建自己定制的Doument Library.
进一步的定制:
上一步实现了在Site Definition中增加Feature,并使它在创建站点的时候可用。现在要实现的一个功能是在创建站点时就从Feture中创建一个Custom Document Library.这样用户就不需要在站点创建完毕后再创建那个定制的Documnent Library.
以下步骤实现了从Site Definition中创建站点时Custom Document Library Feature被默认创建。
步骤1:编辑Site Definition 的ONET.XML文件
在刚刚编辑过的Configuration节的<Lists>元素中增加如下的XML:
<List FeatureId="<GUID OF YOUR FEATURE GOES HERE>"
Type="4000"
Title="$Resources:customDocumentLibrary,customDocumentLibrary_Title;"
Url="$Resources:customDocumentLibrary,customDocumentLibrary_Folder;"
QuickLaunchUrl="$Resources:customDocumentLibrary,customDocumentLibrary_Folder;/Forms/AllItems.aspx" />
或者:
<List FeatureId="<GUID OF YOUR FEATURE GOES HERE>"
Type="4000"
Title="Custom Document Library"
Url="Custom Document Library"
QuickLaunchUrl="Custom Document Library/Forms/AllItems.aspx" />
步骤2:Reset IIS
步骤3:创建一个基于这个Site Definition 的SharePoint 站点
效果如下
更进一步的定制
除了默认创建一个列表,我们还可以在根据Site Definition创建站点时在生成的主页上放置一个Custom Document Library 列表的视图。以下是步骤:
步骤1. 编辑Site Definition 的ONET.xml文件:
找到<Module>节,它是被Configuration 调用的。XML文本就像这样:
<Module Name="Default" Url="" Path="">
<File Url="default.aspx" NavBarHome="True">
<View List="$Resources:core,lists_Folder;/$Resources:core,announce_Folder;" BaseViewID="0" WebPartZoneID="Left" />
<View List="$Resources:core,lists_Folder;/$Resources:core,calendar_Folder;" BaseViewID="0" RecurrenceRowset="TRUE" WebPartZoneID="Left" WebPartOrder="2" />
<AllUsersWebPart WebPartZoneID="Right" WebPartOrder="1"><![CDATA[
<WebPart xmlns="http://schemas.microsoft.com/WebPart/v2" xmlns:iwp="http://schemas.microsoft.com/WebPart/v2/Image">
<Assembly>Microsoft.SharePoint, Version=<chsdate year="1899" month="12" day="30" islunardate="False" isrocdate="False" w:st="on">12.0.0</chsdate>.0, Culture=neutral, PublicKeyToken=71e9bce111e<chmetcnv unitname="C" sourcevalue="9429" hasspace="False" negative="False" numbertype="1" tcsc="0" w:st="on">9429c</chmetcnv></Assembly>
<TypeName>Microsoft.SharePoint.WebPartPages.ImageWebPart</TypeName>
<FrameType>None</FrameType>
<Title>$Resources:wp_SiteImage;</Title>
<iwp:ImageLink>/_layouts/images/homepage.gif</iwp:ImageLink>
</WebPart>
]]></AllUsersWebPart>
<View List="$Resources:core,lists_Folder;/$Resources:core,links_Folder;" BaseViewID="0" WebPartZoneID="Right" WebPartOrder="2" />
<NavBarPage Name="$Resources:core,nav_Home;" ID="1002" Position="Start" />
<NavBarPage Name="$Resources:core,nav_Home;" ID="0" Position="Start" />
</File>
</Module>
<Module>元素指明了调用它的Configurations所使用的资源, <File>元素指明了在Configuration中要实现的那些文件。在为default.aspx配置的<File>元素 中加入如下的XML以创建一个Custom Document Library列表。
<View List="Custom Document Library" BaseViewID="0" WebPartZoneID="Left" WebPartOrder="3" />
或
<View List="$Resources:customDocumentLibrary,customDocumentLibrary_Folder;" BaseViewID="0" WebPartZoneID="Left" WebPartOrder="3" />
步骤2: Reset IIS
步骤3:根据Site Definition 创建站点
效果如下图所示:
注意:一旦通过STSADM.exe 在服务器上安装了某一个Feature则在各个已创建的网站上也可以使用,只是此时在这些网站上这个Feature并没有被激活。激活后即可使用。
分享到:
相关推荐
### 备份还原和迁移MOSS2007站点的关键知识点 #### 1. MOSS 2007备份与还原的重要性 Microsoft Office SharePoint Server (MOSS) 2007是一个企业级的信息管理和协作平台,它提供了强大的文档管理、工作流、门户、...
2. **Office SharePoint Designer 2007**:这是一个网页设计和前端开发工具,可以用来定制SharePoint站点的外观和行为,例如修改CSS文件、编辑.aspx页面、增加脚本、自定义Web部件的外观和数据呈现。 3. **MOSS2007...
在这个过程中,如何将 Moss 2007 中的列表迁移到 Moss 2010 成为了一个重要的问题。本文将为您详细介绍如何将 Moss 2007 中的列表迁移到 Moss 2010,共有两种方法:复制粘贴和列表导入。 方法一:复制粘贴 复制...
在实际应用中,为了满足企业的个性化需求,MOSS 2007的定制成为了一个关键环节。本篇将深入探讨MOSS 2007的定制技术及其应用场景。 1. **页面布局与Web部件定制** - 页面布局:MOSS 2007支持自定义页面布局,开发...
在 MOSS 2007 中,用户信息通常与活动目录(Active Directory, AD)同步。如果尚未配置,需先设置AD与SharePoint的用户同步。完成此步骤后,新用户可以在 SSOServer 中进行管理和更新,这使得用户可以在 MOSS 系统的...
压缩包中的"SharePoint 2007教程.chm"是一个非常实用的学习资料,它可能包含了关于MOSS 2007的详细教程,涵盖上述所有主题。"MeetingRoomControl.sln"可能是一个示例项目,可以帮助你理解Webpart或Event Handler的...
- **运行安装向导**:下载并运行MOSS2007的安装文件,通常是一个.msi文件。 - **选择安装类型**:可以选择完整安装或最小安装。完整安装包含所有组件,而最小安装仅包含基础功能。 - **配置SharePoint Products ...
对于MOSS 2007的开发和部署来说,Web部件和事件处理程序的开发并非难事,然而注册和部署却是一件麻烦的事情。 现在你可以通过《MOSS实用工具包》轻松地完成Web部件和事件处理程序的注册和部署。 下面简单介绍...
标题中的“从MOSS2007升级到SharePoint2010”指的是将Microsoft Office SharePoint Server (MOSS) 2007平台升级至SharePoint Server 2010的过程。这一升级涉及到一系列的技术步骤和注意事项,确保系统的稳定性和数据...
**Microsoft Office SharePoint Server (MOSS) 2007** 是SharePoint 2007的一个高级版本,它增加了更多的高级特性和服务,如企业搜索、业务智能、增强的安全性和合规性支持等。MOSS 2007 为企业提供了全面的内容管理...
Microsoft Office SharePoint Server 2007(简称MOSS 2007)是微软发布的一款企业级协同办公平台,它构建在Windows SharePoint Services 3.0之上,提供了更高级的功能和服务,包括文档管理、工作流、网站创建、知识...
**Microsoft Office SharePoint Server 2007 (MOSS 2007...总的来说,MOSS 2007 是一个强大的文档管理工具,它通过集成多种功能和服务,为企业构建了一个安全、高效且易于扩展的文档管理体系,以应对21世纪的业务挑战。
压缩包中的"InstallSolution.bat"文件很可能是一个批处理脚本,用于自动化部署解决方案到Moss服务器。部署过程中可能涉及解决方案包的创建、添加WebPart到WebPart Gallery、激活功能等步骤。熟练掌握这类脚本编写,...
搜索功能在MOSS 2007中被设计为一种企业级解决方案,支持大规模数据的索引和快速检索。 **WCM架构与开发最佳实践** **内容管理技术** MOSS 2007提供了两种主要的Web内容管理(WCM)选项:发布门户和协作门户。发布...
"MossDemo" 文件可能包含的是一个演示版的MOSS 2007安装或者配置实例,可能包括演示站点、工作流程示例、配置文件等内容,帮助用户了解和体验MOSS 2007的各项功能。在使用这个压缩包时,应遵循安装指南,逐步探索和...
【内容类型】是Microsoft Office SharePoint Server 2007(MOSS 2007)中的一个重要特性,它允许用户自定义和管理信息的结构,从而实现更精细化的数据分类和控制。内容类型定义了一组共享的属性(元数据)、行为(如...
在MOSS 2007(Microsoft Office SharePoint Server 2007)中创建一个使用Form Authentication(表单验证)的站点,是为了提供一种非Windows集成身份验证的登录方式,适用于那些不依赖于Active Directory(AD)域服务...
moss 2007开发教程,moss 2007开发教程(1).MOSS2007之概述
在准备Moss 2007和2010的面试时,理解SharePoint的核心概念是至关重要的。以下是一些关键知识点的详细说明: 1. WebPart:WebPart是SharePoint中的基本构建块,它提供了可重用的用户界面组件。它们允许用户自定义...
MOSS 2007是SharePoint Server 2007的一个版本,它是微软Office System的重要组成部分。它旨在提升组织内的沟通和协作效率,通过集成多种工具和服务,如网站、文档库、列表和工作流,为企业提供一个统一的信息平台。...