设为首页 收藏本站
查看: 1185|回复: 0

[经验分享] Sharepoint站点定义

[复制链接]

尚未签到

发表于 2015-9-25 11:01:43 | 显示全部楼层 |阅读模式
  一、概述:
  1、基于站点定义创建完站点之后也不能将相关站点定义删除,站点集或站点穿件后都会对相关的站点定义文件有以来,删除将导致功能无法正常运行.
  2、1033\XML下的XML文件是站点定义清单,具体的站点定义模版在Template\SiteTemplates下的文件中定义,通过ID和ConfigurationID进行关联
  3、每个站点定义模版必须有一个ONET.XML文件
  4、不建议使用自定义的站点定义,在迁移时如果没有将此模版部署,会导致无法使用的问题,只作为一种技术讨论
  二、结构分析
  Sharepoint根目录\1033\XML下的XML文件以WEBTEMPD为例:
  



<Templates xmlns:ows="Microsoft SharePoint">
<Template Name="GLOBAL" SetupPath="global" ID="0">
<Configuration ID="0" Title="Global template" Hidden="TRUE" ImageUrl="" Description="This template is used for initializing a new site." >   </Configuration>
</Template>
<Template Name="STS" ID="1">
<Configuration ID="0" Title="Team Site" Hidden="FALSE" ImageUrl="/_layouts/images/stts.png" Description="A site for teams to quickly organize, author, and share information. It provides a document library, and lists for managing announcements, calendar items, tasks, and discussions." DisplayCategory="Collaboration" >    </Configuration>
<Configuration ID="1" Title="Blank Site" Hidden="FALSE" ImageUrl="/_layouts/images/stbs.png" Description="A blank site for you to customize based on your requirements." DisplayCategory="Collaboration" AllowGlobalFeatureAssociations="False" >    </Configuration>
<Configuration ID="2" Title="Document Workspace" Hidden="FALSE" ImageUrl="/_layouts/images/stdw.png" Description="A site for colleagues to work together on a document. It provides a document library for storing the primary document and supporting files, a tasks list for assigning to-do items, and a links list for resources related to the document." DisplayCategory="Collaboration" >    </Configuration>
</Template>
  
  第一个Template定义GLOBAL模版,在创建网站是先根据GLOBAL站点定义穿件基本的站点元素,之后根据指定的站点定义创建其他元素,Global站点定义的ONET.XML位于\Template\GLOBAR\XML下。
  根元素Project下面包含NavVars、ListTemplates、BaseTypes、Configurations以及Modules元素,
  ListTemplates元素包含了对系统列表和库的定义,比如母版页库、解决方案库、用户列表、Web部件库等;
  BaseTypes节点定义了支持的基础类型泛型列表、文档库、讨论版和Issue列表;
  Configuration节中定义了Lists(创建时要创建的列表)、Modules元素(为站点中生成相应的文件,如引入基础母版页等)
  
  第二个Template定以STS模版,在STS中包含三个站点模版:Team Site、Blank Site、Document Workspace
  在Template\SiteTemplates文件夹下有对应的STS站点模版文件夹
  
  XML文件夹中有一个ONET.XML定义文件,default.aspx定义Team Site、Blank Site的主页,defaultdws.aspx定义Document Workspace的主页
  ONET.XML:
  



<Project Title="$Resources:onet_TeamWebSite;" Revision="2" ListDir="$Resources:core,lists_Folder;" xmlns:ows="Microsoft SharePoint" UIVersion="4">
<NavBars>                    定义导航
</NavBars>
<ListTemplates>               定义List模版,向后兼容,通常不使用
</ListTemplates>
<DocumentTemplates>                 定义Document模版,向后兼容,通常不使用
</DocumentTemplates>
<Configurations>                            定义创建站点时的列表、Feature等的定义
</Configurations>
<Modules>                                             在站点中生成相应的文件
</Modules>
<ServerEmailFooter>$Resources:ServerEmailFooter;</ServerEmailFooter>
  
  站点定义的结构基本分析完了,接下来我们新建一个站点定义
  三、测试代码:
  (一)在VS2010中新建
  
  
  
  (二)新建后,vs会帮我们建好定义文件
  
  
  



在onet.xml中添加以下代码:
<Project Title="SiteDefinitionDemo" Revision="2" ListDir="" xmlns:ows="Microsoft SharePoint" xmlns="http://schemas.microsoft.com/sharepoint/">
<NavBars>
<NavBar Name="$Resources:core,category_Documents;" Prefix="&lt;table border='0' cellpadding='4' cellspacing='0'&gt;" Body="&lt;tr&gt;&lt;td&gt;&lt;table border='0' cellpadding='0' cellspacing='0'&gt;&lt;tr&gt;&lt;td&gt;&lt;img src='/_layouts/images/blank.gif' id='100' alt='' border='0'&gt;&amp;nbsp;&lt;/td&gt;&lt;td valign='top'&gt;&lt;a id='onetleftnavbar#LABEL_ID#' href='#URL#'&gt;#LABEL#&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;" Suffix="&lt;/table&gt;" ID="1004" />
<NavBar Name="$Resources:core,category_Lists;" Prefix="&lt;table border='0' cellpadding='4' cellspacing='0'&gt;" Body="&lt;tr&gt;&lt;td&gt;&lt;table border='0' cellpadding='0' cellspacing='0'&gt;&lt;tr&gt;&lt;td&gt;&lt;img src='/_layouts/images/blank.gif' id='100' alt='' border='0'&gt;&amp;nbsp;&lt;/td&gt;&lt;td valign='top'&gt;&lt;a id='onetleftnavbar#LABEL_ID#' href='#URL#'&gt;#LABEL#&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/td&gt;&lt;/tr&gt;" Suffix="&lt;/table&gt;" ID="1003" />
</NavBars>
<Configurations>
<Configuration ID="0" Name="SiteDefinitionDemo">
<Lists>
<List FeatureId="00BFEA71-E717-4E80-AA17-D0C71B360101" Type="101" Title="$Resources:core,shareddocuments_Title;" Url="$Resources:core,shareddocuments_Folder;" QuickLaunchUrl="$Resources:core,shareddocuments_Folder;/Forms/AllItems.aspx" />
<List FeatureId="00BFEA71-6A49-43FA-B535-D15C05500108" 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-9C63-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">&lt;ows:TodayISO/&gt;</Field>
</Row>
</Rows>
</Data>
</List>
</Lists>
<SiteFeatures>
<!-- BasicWebParts Feature -->
<Feature ID="FDE5D850-671E-4143-950A-87B473922DC7" />
</SiteFeatures>
<WebFeatures>
<!-- TeamCollab Feature 不加也可以-->
<Feature ID="00BFEA71-4EA5-48D4-A4AD-7EA5C011ABE5" />
</WebFeatures>
<Modules>
<Module Name="Default" />
</Modules>
</Configuration>
</Configurations>
<Modules>
<Module Name="Default" Url="" Path="">
<File Url="default.aspx">
</File>
</Module>
</Modules>
</Project>
  
  1、在代码中,<NavBars>节定义了在页面快速导航中显示文档库和列表,如果不添加,则不在页面中显示。
  2、在<Lists>中创建3个列表:共享文档(shareddocuments),讨论区(discussions),通知(announceList)。在创建网站的同时会创建者三个列表。
  3、创建通知列表同时定义了1条数据,用<Data>定义。
  4、SiteFeatures和WebFeatures中定义了要激活的Feature。
  5、Modules中创建站点主页
  
  
  (三)部署解决方案
  
  部署解决方案后,手动重启IIS,进入网站,点击新建站点,在自定义中找到我们定义的网站模版并创建
  
  
  
  
  
  创建完成效果:

  
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-118596-1-1.html 上篇帖子: sharepoint 2007自带的webservice 下篇帖子: Sharepoint Two Webpart Connect
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表