SharePoint Online:使用 PowerShell 将经典页面转换为现代页面
要求:在 SharePoint Online 中将经典页面转换为现代页面。
SharePoint Online:使用 PowerShell 将经典页面转换为现代页面
现代页面是 SharePoint 的新标准,与经典页面相比具有许多优势,包括改进的性能、直观的用户界面以及对响应式设计的支持。在这篇博文中,我们将提供有关如何在 SharePoint Online 中将经典页面转换为新式页面的分步指南。
我们可以使用 ConvertTo-PnPPage cmdlet 将经典页面(wiki 或 Web 部件页面)转换为现代页面。
PowerShell 将经典页面转换为现代页面
要将经典页面转换为现代页面,请使用此 PowerShell 脚本。使用此脚本之前,请确保经典站点中的“站点页面”功能已激活。
#Set Parameters
$SiteURL="https://crescent.sharepoint.com/sites/marketing"
$ClassicPageName = "home.aspx"
#Connect to Site
Connect-PnPOnline $SiteURL -Interactive
#Convert Classic page to Modern page
ConvertTo-PnPPage -Identity $ClassicPageName -AddPageAcceptBanner
这会将经典页面转换为现代页面,其布局和功能与经典版本不同。转换后的页面将被命名为“Migerated_<页面名称>.aspx”。这是转换后的页面:
PowerShell 将所有经典页面转换为现代页面
让我们使用 PnP PowerShell 将“站点页面”库中的所有页面转换为现代页面。
#Set Parameters
$SiteURL="https://crescent.sharepoint.com/sites/marketing"
#Connect to Site
Connect-PnPOnline $SiteURL -Credentials (Get-Credential) #-Interactive
#Get All Pages from "Site Pages" Library
$Pages = Get-PnPListItem -List SitePages -PageSize 500
Try {
ForEach($Page in $Pages)
{
#Get the page name
$PageName = $Page.FieldValues.FileLeafRef
Write-host "Converting Page:"$PageName
#Check if the page is classic
If($Page.FieldValues["ClientSideApplicationId"] -eq "b6917cb1-93a0-4b97-a84d-7cf49975d4ec")
{
Write-host "`tPage is already Modern:"$PageName -f Yellow
}
Else
{
#Conver the classic page to modern page
ConvertTo-PnPPage -Identity $PageName -Overwrite -TakeSourcePageName -AddPageAcceptBanner
Write-host "`tPage Converted to Modern!" -f Green
}
}
}
Catch {
write-host -f Red "Error Converting Clasic Page to Modern!" $_.Exception.Message
}
此 PnP PowerShell 脚本转换经典页面,重命名以“Previous_
请注意,如果您的网站是使用经典网站模板创建的,您必须确保激活现代网站页面功能。要在经典 SharePoint Online 网站上创建新式页面,请参阅:SharePoint Online:如何在经典网站中创建新式页面?

