SharePoint网站定义

来源:互联网 发布:python 获取当前毫秒 编辑:程序博客网 时间:2024/05/20 14:22
一个网站定义定义了一个种类型的SharePoint网站。安装了MOSS2007后,会在本地的目录C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/TEMPLATE/SiteTemplates中放置各种网站定义模板。
STS定义了Team Site(工作组站点),Blank Site(空站点), 以及 Document Workspace(文挡工作组站点)。
MPS定义了Basic Meeting Workspace(基本会议工作区站点), Blank Meeting Workspace(空会议工作区站点),Decision Meeting Workspace(决策会议工作区站点),Social Meeting Workspace(社会会议工作区站点) Multipage Meeting Workspace(多会议工作区站点)。

WSSv3中又扩展了一些站点定义模板。
CENTRALADMIN(管理中心)模板,用于创建管理中心站点。
WIKI 模板,用于创建WIKI站点。
 BLOG 模板,用于创建Blog站点。

 
每一种站点的定义是通过C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/TEMPLATE下的子目录组合而成的。组合元素包括.xml, .aspx, .ascx, and .master页面,以及一些文挡模板 (.dot, .htm, and so on)和一些文件(.gif, .doc)等等。

网站定义中的所有显示都用$Resources:开头,对应显示文本都集中在C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/Resources。本地化工作主要是编写Resourses里的文件,网站如果显示的一些标题或描述如果是英文显示,那么可以通过修改资源文件里的
<Data Name="修改元素">
    <Value>网站显示的内容</Value>
</Data>

例如Blog网站定义:
在Blog/xml/Onet.xml里有:
<List FeatureId="00BFEA71-52D4-45B3-B544-B1C71B620109" QuickLaunchUrl="$Resources:core,lists_Folder;/$Resources:core,photos_Folder;/AllItems.aspx" Url="$Resources:core,lists_Folder;/$Resources:core,photos_Folder;" Title="$Resources:core,links_schema_blg_photos;" Type="109" /> 

而资源文件里的core.zh-CN.resx下有:
<Data Name="lists_Folder">
    
<Value>Lists</Value>
</Data>
<Data Name="photos_Folder">
    
<Value>Photos</Value>
</Data>
<Data Name="links_schema_blg_photos">
    
<Value>照片</Value>
</Data>

替换后形成的配置文件内容:
<List FeatureId="00BFEA71-52D4-45B3-B544-B1C71B620109" QuickLaunchUrl="Lists/photos/AllItems.aspx" Url="Lists/photos/;" Title="照片" Type="109" />

可见这个List是个图片相关的。那么就可以找到C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/TEMPLATE/FEATURES/PictureLibrary/PicLib/AllItems.aspx。

<%-- _lcid="1033" _version="12.0.4017" _dal="1" --%>
<%-- _LocalBinding --%>
<%@ Page language="C#" MasterPageFile="~masterurl/default.master"    Inherits="Microsoft.SharePoint.WebPartPages.WebPartPage,Microsoft.SharePoint,Version=12.0.0.0,Culture=neutral,PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="SharePoint" Namespace="Microsoft.SharePoint.WebControls" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> <%@ Import Namespace="Microsoft.SharePoint" %> <%@ Register Tagprefix="WebPartPages" Namespace="Microsoft.SharePoint.WebPartPages" Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%@ Register TagPrefix="wssuc" TagName="LeftNavigation" src="~/_controltemplates/LeftNavigation.ascx" %>
<asp:Content ContentPlaceHolderId="PlaceHolderPageTitle" runat="server"><SharePoint:ListProperty Property="Title" runat="server"/></asp:Content>
<asp:Content ContentPlaceHolderId="PlaceHolderPageTitleInTitleArea" runat="server">
    
<SharePoint:ListProperty Property="Title" runat="server"/>
</asp:Content>
<asp:content contentplaceholderid="PlaceHolderAdditionalPageHead" runat="server">
    
<SharePoint:RssLink runat="server" />
</asp:content>
<asp:Content ContentPlaceHolderId="PlaceHolderSearchArea" runat="server">
    
<SharePoint:DelegateControl runat="server"
        ControlId
="SmallSearchInputBox"/>
</asp:Content>
<asp:Content ContentPlaceHolderId="PlaceHolderPageImage" runat="server"><SharePoint:ViewIcon Width="145" Height="54" runat="server" /></asp:Content>
<asp:Content ContentPlaceHolderId="PlaceHolderMain" runat="server">
        
<WebPartPages:WebPartZone runat="server" FrameType="None" ID="Main" Title="loc:Main" />
</asp:Content>
<asp:Content ContentPlaceHolderId="PlaceHolderBodyAreaClass" runat="server">
<style>
.ms-bodyareaframe 
{
    padding
: 0px;
}

</style>
</asp:Content>
<asp:Content ContentPlaceHolderId="PlaceHolderPageDescription" runat="server">
<SharePoint:ListProperty CssClass="ms-listdescription" Property="Description" runat="server"/>
</asp:Content>
<asp:Content ContentPlaceHolderId="PlaceHolderCalendarNavigator" runat="server">
      
<SharePoint:SPCalendarNavigator id="CalendarNavigatorId" runat="server"/>
</asp:Content>
<asp:Content ContentPlaceHolderId="PlaceHolderLeftActions" runat="server">
          
<TABLE width=100% cellpadding=0 cellspacing=2 BORDER=0>
            
<TR>
              
<TD valign=top ID=onetidSelectView class=ms-viewselect style="display:none;">
                  
<TABLE>
                  
<TR><TD width=100% ID="L_SelectView"><SharePoint:EncodedLiteral runat="server" text="<%$Resources:wss,leftnav_selectview%>" EncodeMethod='HtmlEncode'/></TD></TR>
                  
<TR><TD class="ms-navline"><IMG SRC="/_layouts/images/blank.gif" width=1 height=1 alt=""></TD></TR>
                  
</TABLE>
                  
<SharePoint:ViewSelector runat="server"/>
              
</TD>
            
</TR>
          
</TABLE>
          
<TABLE style="padding-top: 8px" cellSpacing=0 cellPadding=0 border=0 width=100%>
            
<TR valign=top><TD><SharePoint:RelatedTasks runat="server"/>&nbsp;</TD></TR>
          
</TABLE>
          
<TABLE id=ImgPreviewTable cellSpacing=2 cellPadding=0 border=0 width=100% style="display:none">
            
<TR><TD vAlign=center >Picture Preview</TD></TR>
            
<TR><TD class="ms-navline" width=128><IMG SRC="/_layouts/images/blank.gif" width=1 height=1 alt=""></TD></TR>
            
<TR>
              
<TD vAlign=center align=center style="padding-top:3px" onClick="ClickPreview(); return false;">
                
<!--webbot CLIENTSIDE bot=ImagePreview name="Picture Preview" Descr="Picture Library Image Preview" StartSpan -->
                  
<name="lnkPreviewImg" id="lnkPreviewImg" href="Javascript:"><img SRC="/_layouts/images/preview.jpg" NAME=ImgPreviewThumbnail ID=ImgPreviewThumbnail class=thumbnail height=90 width=120 alt="Picture Preview"></a><br>
                  
<name="lnkPreviewTitle" id="lnkPreviewTitle" href="Javascript:" class="ms-imglibPreviewTitle">Picture file name</a>
                
<!--webbot bot=ImagePreview EndSpan -->
              
</TD>
            
</TR>
          
</TABLE>
</asp:Content>
<asp:Content ContentPlaceHolderId="PlaceHolderBodyLeftBorder" runat="server">
 
<div height=100% class="ms-pagemargin"><IMG SRC="/_layouts/images/blank.gif" width=6 height=1 alt=""></div>
</asp:Content>

至于代码,大家自己去看吧。不清楚的可以去看SharePoint Object Model。

那么这个blog有什么功能就大概可以从Onet.xml看出来。至于Blog自己的List(不是公共的List)。可以在自己所属的目录下找到List。
例如:Categories,Comments,Posts的List。

附:网站所有的页面功能都集中于C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/TEMPLATE/LAYOUTS下面(除了模板中的Default.aspx以及某类型List相关页面)
管理中心的页面功能集中于C:/Program Files/Common Files/Microsoft Shared/web server extensions/12/TEMPLATE/ADMIN下面。这些代码都类似于上面的AllItems.aspx。
 
原创粉丝点击