0

我们需要一个 SharePoint PnP PowerShell 脚本来遍历所有 WebPart 位置术语并查询它是否最近使用过。

到目前为止,我已经尝试构建一个 PowerShell 脚本来获取 TermSet Location 中的所有术语。获得了其中的所有条款,但被告知我们需要更新代码以提取所有 WebPart 位置条款。这我不知道如何进行。

Connect-PnPOnline $siteurl
Get-PnPTerm -TermSet "Location" -TermStore "Taxonomy" -TermGroup "People" | Select PathOfTerm, Name, ID, Owner, CreatedDate, LastModifiedDate | Export-CSV "C:/Terms/Terms1.csv"

一旦我得到列表,我必须遍历它们以Submit-PnPSearchQuery查看它是否返回任何行。如果是这样,我们必须删除那些未列出的。到目前为止,我能够提取“位置”中所有术语的列表,但不确定 WebPart 位置术语是什么意思。

请帮助我了解如何使用 SharePoint PnP PowerShell 脚本提取 WebPart 位置条款的记录,然后我可以弄清楚如何查找它是否使用过。谢谢!

4

1 回答 1

0

能够自己解决这个问题:

我能够从 webpart 位置术语中提取所有术语及其子术语。我遇到的问题是我用错了TermSet。用下面的代码修复它之后,我能够在所需的术语集中提取所有术语和子术语的列表

Connect-PnPOnline $siteurl
$terms = Get-PnPTerm -TermSet “Webpart Locations” -TermGroup “People”
foreach ($term in $terms) {
    $cText = $term.Context
    $cText.Load($term.Terms)
    $cText.ExecuteQuery()
    $term.Terms | Select ID, Name, PathOfTerm, Owner, CreatedDate, LastModifiedDate | Export-CSV “C:\TermList.csv”

我还尝试通过以下代码查找是否使用了这些术语$term.Terms

Submit-PnPSearchQuery -Query “IsReused:False”  -All

它返回了 csv 中的所有条款,之后检查了 csv 并发现 CreatedDate 和 LastModifiedDate 相等。因此得出结论,我们必须找出其他方法来查找用户是否在 SharePoint 页面中使用了该术语。

希望有一天这对某人有所帮助!谢谢!

于 2019-10-22T09:00:58.683 回答