我正在使用PnP Provisioning Engine将一个网站集远程配置到SharePoint Online中的另一个网站集,如此视频所示:https://channel9.msdn.com/blogs/OfficeDevPnP/Introduction-to-PnP-site-remote-provisioning-engine
它适用于其余的东西,但它没有配置发布页面。我创建配置模板的代码如下:
private static void GetProvisioningTemplate(ConsoleColor defaultForeground, string webUrl, string userName, SecureString password)
{
using (var context = new ClientContext(webUrl))
{
context.Credentials = new SharePointOnlineCredentials(userName, password);
Web web = context.Web;
context.Load(web, w => w.Title);
context.ExecuteQueryRetry();
Console.ForegroundColor = ConsoleColor.White;
Console.WriteLine("Your Site Title is: " + context.Web.Title);
Console.ForegroundColor = defaultForeground;
ProvisioningTemplateCreationInformation ptci = new ProvisioningTemplateCreationInformation(web);
ptci.FileConnector = new FileSystemConnector(String.Format(@"{0}\..\..\", AppDomain.CurrentDomain.BaseDirectory), "");
ptci.PersistBrandingFiles = true;
ptci.PersistPublishingFiles = true;
ptci.IncludeNativePublishingFiles = true;
ptci.ProgressDelegate = delegate(String message, Int32 progress, Int32 total)
{
Console.WriteLine("{0:00}/{1:00} - {2}", progress, total, message);
};
ProvisioningTemplate template = web.GetProvisioningTemplate(ptci);
XMLTemplateProvider provider = new XMLFileSystemTemplateProvider(String.Format(@"{0}\..\..\", AppDomain.CurrentDomain.BaseDirectory), "");
provider.SaveAs(template, "PnPProvisioningDemo.xml");
}
}
当我检查XML模板时,它没有向我显示发布页面的详细信息,也没有在应用此模板时将任何发布页面配置到目标站点。
所以建议使用此引擎配置发布页面。
提前致谢。
答案 0 :(得分:2)
我已经读过配置引擎不支持发布页面。
来源:https://techcommunity.microsoft.com/t5/SharePoint-Developer/PnP-Provisioning-Engine-template-support-for-publishing-pages/td-p/46465来自02-16-2017。
但您可以使用pnp:File
添加发布页面<pnp:File src="mypublishingpage.aspx" Folder="{site}/Pages" Overwrite="true">
<pnp:Properties>
<pnp:Property Key="ContentTypeId" Value="{contenttypeid:MyPageContentType}" />
<pnp:Property Key="Title" Value="My Publishing Page" />
<pnp:Property Key="PublishingPageLayout" Value="{sitecollection}/_catalogs/masterpage/MyPageLayout.aspx, My Page Layout" />
</pnp:Properties>
</pnp:File>