所用 Web 部件映射概述
重要
SharePoint PnP 新式化框架是 PnP 框架的一部分,且在不断演进,请查看发行说明了解最新更改的最新信息。 如果遇到问题,请在 PnP 框架 GitHub 问题列表中提出问题。
将页面从经典页面转换为新式页面时,也将转换那些使用频率最高的 Web 部件。 XSLTListView 等经典 Web 部件会被替换为列表 Web 部件等对应的 OOB 新式部件,假如有对应的新式部件。 下一章概述转换的经典 Web 部件和转换方式。
Web 部件转换列表
页面转换使用默认的 Web 部件映射将经典页面转换为新式页面。 此处对这种默认模型中使用的映射作出了介绍,但尚不明确你是否可更新该映射以便执行将自己的第三方自定义 Web 部件添加为转换目标等操作。 如何扩展 Web 部件映射模型见页面转换模型一文所述。
经典 Web 部件 | 新式 Web 部件 | Comments | 跨网站支持 |
---|---|---|---|
Microsoft.SharePoint.WebPartPages.XsltListViewWebPart(列表数据视图) | 列表、库或活动 Web 部件 | 请参阅下一章了解更多详细信息 | 是,如果存在具有相同名称的列表 |
Microsoft.SharePoint.WebPartPages.ListViewWebPart(列表数据旧版视图) | 列表、库或活动 Web 部件 | 请参阅下一章了解更多详细信息 | 是,如果存在具有相同名称的列表 |
Microsoft.SharePoint.Portal.WebControls.SiteFeedWebPart(工作组网站的网站源) | 新闻 Web 部件 | 此 Web 部件通常用于在主页上显示新闻,因此我们将其替换为 OOB 新闻 Web 部件 | 是 |
Microsoft.SharePoint.WebPartPages.ContentEditorWebPart(嵌入内容) | 嵌入 Web 部件、文本 Web 部件和/或社区开源脚本编辑器作为可选的目标 Web 部件 | 请参阅下一章了解更多详细信息 | 是 |
Microsoft.SharePoint.WebPartPages.ScriptEditorWebPart(嵌入脚本) | 未转换的 OOB、社区开源脚本编辑器可以配置为可选的目标 Web 部件 | 请参阅下一章了解更多详细信息 | 是 |
Microsoft.SharePoint.WebPartPages.ImageWebPart | 图像 Web 部件 | 是 | |
Microsoft.SharePoint.WebPartPages.ClientSideWebPart(= 经典页面上基于 SPFX 的新式 Web 部件) | 将保留同一新式 Web 部件及其配置 | 是的,如果目标网站上提供了相同的 SPFX Web 部件 | |
Microsoft.SharePoint.WebPartPages.ClientWebPart(= 经典页面上的 SharePoint 外接程序 Web 部件) | 同一外接程序可用于新式页面,该外接程序(包括其配置)将被取代 | 是的,如果目标网站上提供了相同的加载项 Web 部件 | |
Microsoft.SharePoint.Publishing.WebControls.MediaWebPart(嵌入视频) | 文件查看器 Web 部件 | 是 | |
Microsoft.SharePoint.Publishing.WebControls.ContentByQueryWebPart(查询并呈现数据) | 突出显示内容 Web 部件 | 否 | |
Microsoft.SharePoint.Publishing.WebControls.ContentBySearchWebPart(搜索并呈现数据) | 突出显示内容 Web 部件 | 否 | |
Microsoft.SharePoint.Publishing.WebControls.ResultScriptWebPart(搜索并呈现数据) | 突出显示内容 Web 部件 | 否 | |
Microsoft.Office.Excel.WebUI.ExcelWebRenderer(从 Excel 文件嵌入) | 文件查看器 Web 部件 | 否 | |
Microsoft.Office.Visio.Server.WebControls.VisioWebAccess(从 Visio 文件嵌入) | 文件查看器 Web 部件 | 否 | |
Microsoft.SharePoint.WebPartPages.PageViewerWebPart(从其他页面嵌入) | 嵌入 Web 部件 | 是 | |
Microsoft.SharePoint.WebPartPages.PictureLibrarySlideshowWebPart(放映图片幻灯片) | 图像库 Web 部件 | 图片库不支持 CDN,建议将图片库内容复制到常规文档库,然后在图像库 Web 部件中配置该文档库 | 是,如果存在具有相同名称的图片库 |
Microsoft.SharePoint.WebPartPages.SimpleFormWebPart(HTML 表单嵌入) | 可以配置未转换的 OOB、(可选)社区开源脚本编辑器 | 请参阅下一章了解更多详细信息 | 是 |
Microsoft.SharePoint.Publishing.WebControls.SummaryLinkWebPart | QuickLinks Web 部件或文本 Web 部件 | 默认情况下,摘要链接 html 会转换为 QuickLinks,但你可以选择生成 html,然后使用文本 Web 部件显示该 html。 请参阅下一章了解更多详细信息 | 是 |
Microsoft.SharePoint.Portal.WebControls.ContactFieldControl(联系人卡片) | 人员 Web 部件 | 是 | |
Microsoft.SharePoint.WebPartPages.UserDocsWebPart(用户文档) | 突出显示内容 Web 部件 | 是 | |
Microsoft.SharePoint.WebPartPages.XmlWebPart(使用 xml 和 xsl 生成 HTML) | 已删除(添加了文本 Web 部件用于说明原因) | 是 | |
Microsoft.SharePoint.WebPartPages.DataFormWebPart(列表表单旧版视图) | 已删除(添加了文本 Web 部件用于说明原因) | 是 | |
Microsoft.SharePoint.WebPartPages.WikiContentWebpart | 已删除(添加了文本 Web 部件用于说明原因) | SPO 中不再相关 | 是 |
Microsoft.SharePoint.WebPartPages.SilverlightWebPart(运行 Silverlight 应用) | 已删除(添加了文本 Web 部件用于说明原因) | 没有新式替换件,Micosoft Edge 和 Chrome 等新式浏览器中 Silverlight 不再有效 | 是 |
Microsoft.SharePoint.Publishing.WebControls.MembersWebPart | 已删除(添加了文本 Web 部件用于说明原因) | 现在使用 OOB 网站权限功能来管理网站成员 | 是 |
Microsoft.Office.InfoPath.Server.Controls.WebUI.BrowserFormWebPart(InfoPath Web 部件) | 已删除 | 是 | |
Microsoft.SharePoint.WebPartPages.GettingStartedWebPart(入门磁贴) | 已删除 | 经典团队网站体验不必保留入门磁贴 | 是 |
Microsoft.SharePoint.WebPartPages.SPUserCodeWebPart(沙盒 Web 部件) | 已删除 | 沙盒 Web 部件在 SPO 中不再可用 | 是 |
Microsoft.SharePoint.Publishing.WebControls.TableOfContentsWebPart | 已删除 | 如果依然相关,则应将此数据集成到站点导航中 | 是 |
注意
上表中未列出的所有其他 Web 部件都将被默认映射为声明“未转换 xxx Web 部件”的文本 Web 部件。 请参阅经典和新式 Web 部件体验一文了解经典 Web 部件和新式 Web 部件在功能层面的关系。
映射属性
映射属性允许你在使用 OOB 映射文件时定义行为。 典型示例是允许使用社区脚本编辑器。 下表定义了可用的映射属性。
映射属性 | 默认值 | 说明 |
---|---|---|
UseCommunityScriptEditor | false | 在适用的映射中配置社区脚本编辑器的使用 |
SummaryLinksToQuickLinks | true | 配置摘要链接 Web 部件到 QuickLinks 的映射 |
Web 部件转换详细信息
允许在转换期间使用社区脚本编辑器 Web 部件
没有 OOB 新式脚本编辑器 Web 部件,由于嵌入脚本存在固有的安全风险,因此不鼓励使用它。 但是,如果你确实想要转换经典脚本编辑器 Web 部件,那么仍可以使用开源社区新式脚本编辑器来完成此操作。
安装社区脚本编辑器
按照说明安装开放源代码脚本编辑器 Web 部件 (https://github.com/SharePoint/sp-dev-fx-webparts/tree/master/samples/react-script-editor) 租户。
设置 UseCommunityScriptEditor 映射标志
你需要告诉页面转换引擎你已安装社区脚本编辑器,并且希望在转换期间使用它。 使用 ConvertTo-PnPPage
PnP PowerShell cmdlet 时,可以指定 标志 -UseCommunityScriptEditor
。 当使用 .Net 时,你可以设置标志,如下面的示例所示
PageTransformationInformation pti = new PageTransformationInformation(page)
{
// If target page exists, then overwrite it
Overwrite = true,
};
pti.MappingProperties["UseCommunityScriptEditor"] = "true";
pageTransformator.Transform(pti);
XsltListViewWebPart 和 ListViewWebPart Web 部件
这两种 Web 部件在经典页面中非常灵活,因此被替换为更具体的新式 Web 部件。 替换方式如下:
- 文档库:库 Web 部件
- 列表:列表 Web 部件
- 日历:活动 Web 部件
- 问题列表:列表 Web 部件
- 任务列表:说明无法映射该任务列表的文本 Web 部件
- 讨论板:说明无法映射该讨论板的文本 Web 部件
- 调查列表:说明无法映射该调查列表的文本 Web 部件
在转换为列表或库 Web 部件期间,转换引擎将尝试检测用于配置 Web 部件的视图并将新式库或列表 Web 部件配置为显示相同的视图。
ContentEditorWebPart Web 部件
可通过以下两种方式之一使用内容编辑器 Web 部件:指向 SharePoint 中位于其他位置的文件,或者嵌入内容。 根据使用的模式应用以下逻辑:
- 文件链接:
- 嵌入的内容:
ScriptEditorWebPart Web 部件
默认情况下,将显示文本 Web 部件以说明此内容未进行转换,或者如果已配置,则使用社区方脚本编辑器 Web 部件(如上所示)
摘要链接 Web 部件
默认情况下,摘要链接 html 会转换为 QuickLinks,但你可以选择生成 html,然后使用文本 Web 部件显示该 html。 若要使用 HTML,需要设置所需的映射属性:使用 ConvertTo-PnPPage
PnP PowerShell cmdlet 时, -SummaryLinksToHtml
可以指定 标志。 当使用 .Net 时,你可以设置标志,如下面的示例所示
PageTransformationInformation pti = new PageTransformationInformation(page)
{
// If target page exists, then overwrite it
Overwrite = true,
};
pti.MappingProperties["SummaryLinksToQuickLinks"] = "false";
pageTransformator.Transform(pti);