我正在使用 SharePoint 2013,并且有一个自定义母版页和几个要部署的 aspx 布局页面,所有这些页面都被复制到站点设置中的“母版页和页面布局”部分。

这些 aspx 页面包含 web 部件区域,但如何在 web 部件区域内的 aspx 页面的标记中添加 web 部件?

我基本上要做的是将“默认”webpart 嵌入到页面的布局中,这样当为特定页面选择此布局时,它已经添加了 webpart。

我说的是开箱即​​用的 webparts,例如内容编辑器 webparts 和文档库 Webparts。 2013 年,这些现在都被称为“应用程序”。

任何建议都非常感谢。

最佳答案

最简单的方法是利用设计器为您创建代码...

  • 创建页面并在 SharePoint Designer 中以高级模式打开它。
  • 将所需的 webpart 添加到 webpart 区域。这将创建
    必需的 html。
  • 复制它并从 ID 值中删除 g_。
  • 在您的页面布局中使用此代码。

  • Ps:在SharePoint 设计器功能区中标识WebPart 按钮被禁用,只需保存页面。这将启用它。

    下面给出了我添加内容编辑器 Webpart 和脚本编辑器 Webpart 时由设计器生成的代码。
    <WebPartPages:ContentEditorWebPart webpart="true" runat="server" __WebPartId="{BA190D08-907A-4F94-B8F0-C3966A61E601}">
        <WebPart xmlns="http://schemas.microsoft.com/WebPart/v2">
            <Title>$Resources:core,ContentEditorWebPartTitle;</Title>
            <Description>$Resources:core,ContentEditorWebPartDescription;</Description>
            <PartImageLarge>/_layouts/15/images/mscontl.gif</PartImageLarge>
            <PartOrder>4</PartOrder>
            <ID>ba190d08_907a_4f94_b8f0_c3966a61e601</ID>
        </WebPart>
    </WebPartPages:ContentEditorWebPart>
    
    <WebPartPages:ScriptEditorWebPart runat="server" ChromeType="None" Description="$Resources:core,ScriptEditorWebPartDescription;"
        ImportErrorMessage="$Resources:core,ImportErrorMessage;" Title="$Resources:core,ScriptEditorWebPartTitle;"
        __MarkupType="vsattributemarkup" __WebPartId="{1861cebe-9134-4645-8500-13ce8817d416}" WebPart="true"
        __designer:IsClosed="false" partorder="6" id="1861cebe_9134_4645_8500_13ce8817d416">
    </WebPartPages:ScriptEditorWebPart>
    

    关于asp.net - 如何将 SharePoint 2013 webpart 直接嵌入 aspx 布局页面作为该布局的默认 webpart,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31229284/

    10-12 16:46