我对Sharepoint(2007)全新,所以请耐心等待.我想在创建新网站时自动创建aspx页面.这些页面将通过标签链接到标签,标签将由母版页定义.我没有自定义网站定义,并计划将功能装订应用于开箱即用的空白网站定义.
通过我的研究,我认为您可以创建一个Web部件页面并将其转换为一个功能.然后,我可以将其钉在空白网站定义中.问题是我没有找到任何关于如何做到这一点的信息.所以我有两个问题:
我发现有一个人在这里问同一个问题:如何将网页部分页面添加到网站定义中? 我读了第一个回复,但它有点过头了,我不知道它是否真的回答了我的问题.
非常感谢!
第一个问题的答案取决于您是指应用程序页面还是内容页面.它们各有优势:应用程序页面很好,它们可以运行自定义服务器端代码,而内容页面很好,因为(例如)它们可以由用户自定义,但默认情况下限制在什么样的代码中跑.
有关功能和限制两种类型之间差异的相当好的讨论,请查看Windows SharePoint Services SDK并查看名为" Application _layouts页面类型 "和" 内容页面类型 " 的主题.
至于装订,它比向网站定义的onet.xml文件添加新功能更简单,更灵活.此文章似乎替代的一个很好的概述.您可能想要复制空白网站定义,重命名它,然后在工作中使用它.
内容页面的功能
你需要三种类型的东西:
WebPartZones定义但没有实际Web部件的Web部件页面的shell (尚未).您的功能的文件夹结构如下所示:
12
+-- TEMPLATES
+-- FEATURES
+-- YourFeature
+-- PageTemplates
| +-- Page.aspx (simple aspx page)
| +-- WebPartPage.aspx (still simple, but with WebPartZones)
+-- feature.xml
+-- elements.xml
Run Code Online (Sandbox Code Playgroud)
的Feature.xml:
<Feature
Id="CFF117BC-9685-4a7b-88D0-523D9DAD21F0"
Title="Custom Pages Feature"
Scope="Web"
xmlns="http://schemas.microsoft.com/sharepoint/">
<ElementManifests>
<ElementManifest Location="elements.xml"/>
</ElementManifests>
</Feature>
Run Code Online (Sandbox Code Playgroud)
Elements.xml的
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
<Module Path="PageTemplates" Url="Pages" >
<File Url="Page.aspx" Type="Ghostable" />
<File Url="WebPartPage.aspx" Name="WebPartPage.aspx" Type="Ghostable" >
<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>Some content that you want to provision with the feature</Title>
<FrameType>TitleBarOnly</FrameType>
<cewp:Content>
Hello world.
</cewp:Content>
</WebPart>
]]>
</AllUsersWebPart>
</File>
</Module>
</Elements>
Run Code Online (Sandbox Code Playgroud)
Page.aspx
<%@ Page MasterPageFile="~masterurl/default.master"
meta:progid="SharePoint.WebPartPage.Document" %>
<asp:Content runat="server" ContentPlaceHolderID="PlaceHolderMain">
Hello World
</asp:Content>
Run Code Online (Sandbox Code Playgroud)
WebPartPage.aspx
<%@ Page Language="C#" MasterPageFile="~masterurl/default.master" Inherits="Microsoft.SharePoint.WebPartPages.WebPartPage,Microsoft.SharePoint,Version=12.0.0.0,Culture=neutral,PublicKeyToken=71e9bce111e9429c" meta:progid="SharePoint.WebPartPage.Document" %>
<%@ Register Tagprefix="WebPartPages"
Namespace="Microsoft.SharePoint.WebPartPages"
Assembly="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<asp:Content ID="main" runat="server" ContentPlaceHolderID="PlaceHolderMain" >
<table width="100%">
<tr>
<td valign="top" style="width:50%">
<WebPartPages:WebPartZone ID="Left" runat="server"
FrameType="TitleBarOnly" Title="Left Web Part Zone" />
</td>
<td valign="top" style="width:50%">
<WebPartPages:WebPartZone ID="Right" runat="server"
FrameType="TitleBarOnly" Title="Right Web Part Zone" />
</td>
</tr>
</table>
</asp:Content>
Run Code Online (Sandbox Code Playgroud)
如果以这种方式配置功能,则应该能够在该结构中部署站点内容页面.
另外,我强烈推荐Ted Pattison的Inside Windows SharePoint Services一书.它详细介绍了此主题,包括网站内容页面的重要安全方面.这很容易购买价格.
| 归档时间: |
|
| 查看次数: |
5137 次 |
| 最近记录: |