建立 SharePoint Server 的對象
適用於:2013 Subscription Edition SharePoint in Microsoft 365
了解如何使用 Microsoft PowerShell 指令碼建立對象。
使用 Microsoft PowerShell 指令碼建立對象
- 確認您是否符合下列基本需求:
請參閱 Add-SPShellAdmin。
您必須閱讀 about_Execution_Policies。
- 複製下列變數宣告,並將它們貼到文字編輯器 (例如 [記事本])。 請設定您組織特有的輸入值。 您將在步驟 3 中使用這些值。 請儲存檔案,並將它命名為 Audiences.ps1。
## Settings you may want to change for Audience Name and Description ##
$mySiteHostUrl = https://www.my.contoso.com
$audienceName = "<Input name of audience>"
$audienceDescription = "<Input description for audience>"
$audienceRules = @()
$audienceRules += New-Object Microsoft.Office.Server.Audience.AudienceRuleComponent("AccountName", "Contains", "jdoe")
#Create an OR group operator between the two audience rules.
$audienceRules += New-Object Microsoft.Office.Server.Audience.AudienceRuleComponent("", "OR", "")
$audienceRules += New-Object Microsoft.Office.Server.Audience.AudienceRuleComponent("AccountName", "Contains", "jlew")
- 複製下列程式碼,並將它貼到步驟 2 之變數宣告下方的 Audiences.ps1。
#Get the My Site Host's SPSite object
$site = Get-SPSite $mySiteHostUrl
$ctx = [Microsoft.Office.Server.ServerContext]::GetContext($site)
$audMan = New-Object Microsoft.Office.Server.Audience.AudienceManager($ctx)
#Create a new audience object for the given Audience Manager
$aud = $audMan.Audiences.Create($audienceName, $audienceDescription)
$aud.AudienceRules = New-Object System.Collections.ArrayList
$audienceRules | ForEach-Object { $aud.AudienceRules.Add($_) }
#Save the new Audience
$aud.Commit()
#Compile the new Audience
$upa = Get-SPServiceApplication | Where-Object {$_.DisplayName -eq "User Profile Service Application"}
$audJob = [Microsoft.Office.Server.Audience.AudienceJob]::RunAudienceJob(($upa.Id.Guid.ToString(), "1", "1", $aud.AudienceName))
注意事項
您可以使用不同的檔案名稱,但是必須將檔案儲存為副檔名為 .ps1 的 ANSI 編碼文字檔。
按一下 SharePoint Management Shell。
變更至您儲存檔案的目錄。
在 PowerShell 命令提示字元中,輸入下列命令:
./Audiences.ps1
如需 PowerShell 腳本和 .ps1 檔案的其他資訊,請參閱 執行 Windows PowerShell 腳本。
如需如何建立對象的詳細資訊,請參閱 AudienceRuleComponent 類別。