当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] SharePoint Online:使用 PowerShell 获取所有网站页面

作者:精品下载站 日期:2024-12-15 00:26:33 浏览:14 分类:玩电脑

SharePoint Online:使用 PowerShell 获取所有网站页面


要求:使用 PowerShell 获取 SharePoint Online 中的所有网站页面。

如何使用 PowerShell 获取 SharePoint Online 中的所有网站页面?

如果您是管理 SharePoint Online 的 SharePoint 管理员,您可能需要获取特定网站中所有页面的列表,也许是出于报告目的。本文将向您展示如何从 SharePoint Online 网站获取所有页面。我们还将向您展示如何将页面信息导出到 Excel,以便您可以更轻松地使用它。

获取网站上所有页面列表的最简单方法是从网络浏览器打开网站页面库并将视图切换到“所有页面”。

[玩转系统] SharePoint Online:使用 PowerShell 获取所有网站页面

如果您需要获取所有网站页面清单,让我向您展示如何使用 PowerShell 获取 SharePoint Online 网站中所有页面的列表。以下是 PnP PowerShell 脚本,用于从“站点页面”库获取所有页面并将“页面”数据导出到 CSV 文件:


#Parameters
$SiteURL = "https://crescent.sharepoint.com/sites/marketing"
$CSVFile = "C:\Temp\SitePages.csv"

#Connect to PnP
Connect-PnPOnline -Url $SiteURL -Interactive

#Get All Site Pages
$SitePages = Get-PnPListItem -List "Site Pages"

$PagesDataColl = @()
#Collect Site Pages data - Title, URL and other properties
ForEach($Page in $SitePages)
{
    $Data = New-Object PSObject -Property ([Ordered] @{
        PageName  = $Page.FieldValues.Title
        RelativeURL = $Page.FieldValues.FileRef      
        CreatedOn = $Page.FieldValues.Created_x0020_Date
        ModifiedOn = $Page.FieldValues.Last_x0020_Modified
        Editor =  $Page.FieldValues.Editor.Email
        ID = $Page.ID
    })
    $PagesDataColl += $Data
}

$PagesDataColl

#Export data to CSV File
$PagesDataColl | Export-Csv -Path $CSVFile -NoTypeInformation

如何从网站页面库中获取所有现代网站页面?

那么,现代页面使用的内容类型 ID 为“0x0101009D1CB255DA76424F860D91F20E6C4118001F335AF6BE6A7A43AE04581E676630ED”。因此,让我们应用一个过滤器并获取新式页面的列表:


#Get All Modern Site Pages
$SitePages = Get-PnPListItem -List "Site Pages" -Query "<View><Query><Where><Eq><FieldRef Name='ContentTypeId'/><Value Type='Text'>0x0101009D1CB255DA76424F860D91F20E6C4118001F335AF6BE6A7A43AE04581E676630ED</Value></Eq></Where></Query></View>"  

如果要将页面从一个网站复制到另一个网站,请使用:如何使用 PowerShell 在 SharePoint Online 中复制网站页面?

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯