2008-10-24 110 views
3

我必須爲必須包含預定義的Web部件頁的客戶端創建站點定義。我可以創建Web部件頁面,但在創建時將它們附加到網站上時會感到不知所措。如何將Web部件頁面添加到網站定義?

我知道通過SharePoint創建的Web部件頁面存儲在文檔庫中。我是否需要預先填充「Web部件頁」文檔庫並將所需的導航添加到這些文件中?如果是這樣,我該如何添加所需的aspx文件?

最後,是否有任何警告,我應該知道在onet中配置自定義Web部件頁?

回答

1

您可以按照這種使用功能裝訂的方法。我用它來自動Web部件添加到我的網站創建時:

http://blogs.msdn.com/sharepoint/archive/2007/03/22/customizing-moss-2007-my-sites-within-the-enterprise.aspx

+0

羅布的回答是不是我正在看着。我們要做的是添加額外的Web部件頁面,這些Web部件頁面將具有預先定義的Web部件佈局,這些佈局已經設置並鏈接到頂部或快速導航。 我從來沒有想過使用功能和裝訂它!我不知道爲什麼要考慮我們這樣做我們所有的自定義列表。我會試一試!感謝webwires。 – knight0323 2013-08-28 16:35:51

4

就可以爲他們提供在ONET.XML頁面。

首先將Web部件頁面模板添加到您的網站定義中。

然後在您的ONET.XML中提供一個頁面實例(添加了web parted)。

這東西有充分的說明泰德帕蒂森的書Inside Windows SharePoint Services 3.0

的Default.aspx

<%@ Assembly Name="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" %> 

<%@ Page language="C#" MasterPageFile="~masterurl/default.master"  
      Inherits="Microsoft.SharePoint.WebPartPages.WebPartPage" %> 

<asp:Content ContentPlaceHolderId="PlaceHolderMain" runat="server"> 
    <table cellspacing="0" border="0" width="100%"> 
     <tr> 
     <td class="ms-pagebreadcrumb"> 
      <asp:SiteMapPath SiteMapProvider="SPContentMapProvider" id="ContentMap" SkipLinkText="" NodeStyle-CssClass="ms-sitemapdirectional" runat="server"/> 
     </td> 
     </tr> 
     <tr> 
     <td> 
     <table width="100%" cellpadding=0 cellspacing=0 style="padding: 5px 10px 10px 10px;"> 
      <tr> 
      <td valign="top" width="70%"> 
       <WebPartPages:WebPartZone runat="server" FrameType="TitleBarOnly" ID="Left" Title="loc:Left" /> 
       &nbsp; 
      </td> 
      <td>&nbsp;</td> 
      <td valign="top" width="30%"> 
       <WebPartPages:WebPartZone runat="server" FrameType="TitleBarOnly" ID="Right" Title="loc:Right" /> 
       &nbsp; 
      </td> 
      <td>&nbsp;</td> 
      </tr> 
     </table> 
     </td> 
     </tr> 
    </table> 
</asp:Content> 

<asp:Content ID="Content1" ContentPlaceHolderId="PlaceHolderPageTitle" runat="server"> 
    <SharePoint:ProjectProperty ID="ProjectProperty1" Property="Title" runat="server"/> 
</asp:Content> 

<asp:Content ID="Content2" ContentPlaceHolderId="PlaceHolderPageTitleInTitleArea" runat="server"> 
     <label class="ms-hidden"><SharePoint:ProjectProperty ID="ProjectProperty2" Property="Title" runat="server"/></label> 
</asp:Content> 

ONET.XML片斷

<Module Name="Default" Url="" > 
    <File Url="default.aspx" Type="Ghostable"> 
    <!-- Add a Web Part to left zone --> 
    <AllUsersWebPart WebPartZoneID="Left" WebPartOrder="0"> 
     <![CDATA[   
     <WebPart 
     xmlns="http://schemas.microsoft.com/WebPart/v2" 
     xmlns:cewp="http://schemas.microsoft.com/WebPart/v2/ContentEditor"> 
     <Assembly>Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c</Assembly> 
     <TypeName>Microsoft.SharePoint.WebPartPages.ContentEditorWebPart</TypeName> 
     <Title>Working with Site Definitions</Title> 
     <FrameType>TitleBarOnly</FrameType> 
     <cewp:Content> 
      This Web Part was added through declarative logic in ONET.XML 
     </cewp:Content> 
     </WebPart> 
     ]]> 
    </AllUsersWebPart> 
    </File> 
</Module> 
相關問題