我们需要一个SharePoint PnP PowerShell脚本来遍历所有WebPart位置条款并查询是否最近使用过。
到目前为止,我已经尝试构建PowerShell脚本来获取TermSet位置中Term中的所有条款。在其中获得了所有条款,但是得知我们需要更新代码以提取所有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位置条款的记录,然后我可以弄清楚如何查找其是否已使用。 谢谢!
答案 0 :(得分: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并发现CreatedDate和LastModifiedDate相等之后,它返回了csv中的所有条款。 因此得出结论,我们必须找出其他方法来查找用户是否在SharePoint页面中使用了该术语。
希望有一天能对某人有所帮助! 谢谢!