zoukankan      html  css  js  c++  java
  • SharePoint 2010 创建简单的网站定义(Site Definition)

     介绍任何一个新的产品和技术,亦或者一个用法都要经过一个标准的流程进行认知:是什么,为什么,怎么做.

     

     

    网站定义是什么?,微软官方对网站定义(Site Definition)的解释:

    Contains a server-side collection of files that defines the structure of one or more site templates.

    从定以我们可以看出,网站定义就是几个集合,这个集合包含aspx页面和一些XML文件, 这些组合在一起就定义了一个或者多个SharePoint 站点的结构.

    为什么用网站定义? 我们同样可以通过Site Template 去定义SharePoint 站点的模板,而且这个方法更直接快速, 那为什么我们还要花大把的时间去创建一个定义文件呢?这就需要你来了解下网站定义和网站模板的优缺点.

    这里有详细的文章进行介绍:http://blogs.msdn.com/b/brianwilson/archive/2008/07/13/site-definitions-versus-site-templates-and-deciding-on-the-correct-customization-approach.aspx 

     

    怎样创建网站定义呢? 如果你根据为什么介绍的理由选择了网站定义的方式,那你就需要了解下面的内容.

    下面的内容介绍如何创建一个简单的网站定义, 之所以说简单, 是因为这个定义的文件里,包含了最少的站点元素和站点内容.

     

    一个网站定义至少包含以下内容:

    一个webtemp.xml (%COMMONPROGRAMFILES%\Microsoft Shared\web server extensions\12\TEMPLATE\1033\XML ),可以包含一个或者多个站点模板.里面定义了站点的名称,图标, 描述.

    一个单独的文件目录(%COMMONPROGRAMFILES%\Microsoft Shared\web server extensions \12\TEMPLATE\SiteTemplates ) : 包含这个网站定义的所有文件, 列表,feature等等.

     

    了解了网站定义需要包含的内容,我们就开始着手创建一个简单的网站定义:

    打开Visual Studio 2010, 创建一个Site Definition 项目并命名为Demo.SiteDefinition. 选择"deploy as farm solution". 并点击完成. 项目目录如下:

     

    我们只创建一个简单的网站定义, 因此我们不对项目做任何更改, 但要分析下项目下的几个文件.

    1. Webtemp_*.xml 文件, 这个文件定义了当前网站定义下有多少个网站模板, 每个模板的名字,描述等. 默认只包含一个站点模板.

    首先改掉模版的名字为"SDDemo", 为了不与SharePoint 自带的网站定义冲突,我们把ID改为大于10000的数字, 比如10005

    Title: Demo 1

    Description: this is a simple site definition example.

    1. Onet.xml

    Lists:站点默认包含的列表, 比如打开Team site 网站定义, 你可以看到默认的列表有Shared Document, Task list, calendar, LINKS等默认列表, 我们只简单添加一个列表

     <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" />
          </Lists>

     

    SiteFeatures: 网站集应用

    WebFeatures: 站点应用

    点击保存, 分别把文件拷到相应的目录, 当然也可以同WSP 直接部署.

     

    看下效果:

    如果你用自己创建的site definition 创建站点时报一下错误"

    "Failed to instantiate file "default.master" from module "DefaultMasterPage": Source path "default.master" not found."

     

    请确认template name属性是否匹配你Folder的名字.并须一致.

     <Template Name="Demo.SiteDefinition" ID="10005">.

     

  • 相关阅读:
    pgspider sqlite mysql docker 镜像
    pgspider docker 镜像
    pgspider基于pg 的高性能数据可视化sql 集群引擎
    diesel rust orm 框架试用
    golang 条件编译
    Performance Profiling Zeebe
    bazel 学习一 简单java 项目运行
    一个好用node http keeplive agnet
    gox 简单灵活的golang 跨平台编译工具
    mailhog 作为smtp server mock工具
  • 原文地址:https://www.cnblogs.com/splover/p/2174809.html
Copyright © 2011-2022 走看看