如何使用PowerShell删除已应用的PnPProvisioningTemplate?

时间:2018-02-06 14:51:12

标签: xml powershell sharepoint sharepoint-online custom-action

正如标题所说,如何使用PowerShell删除已应用的PnPProvisioningTemplate?

我在所有"自定义操作的名称属性"上尝试了Remove-PnPCustomAction。但是在运行此脚本后它无效。

我用过这个例子: https://docs.microsoft.com/en-us/sharepoint/dev/solution-guidance/modern-experience-customizations-customize-lists-and-libraries和"自定义标签"功能区示例。

此模块:SharePointPnPPowerShellOnline

# Connect to a previously created Modern Site
$cred = Get-Credential;
Connect-PnPOnline -Url https://[tenant].sharepoint.com/sites/dev/ -Credentials $cred;
Write-Host "Connected to SharePoint!";

$scriptPath = "$($PSScriptRoot)\custom_action.xml";
Write-host "Running script: $($scriptPath)";

# Apply the PnP provisioning template
#Apply-PnPProvisioningTemplate -Path $scriptPath -Handlers CustomActions;
#Write-host "Applied custom action!";

$test = Get-PnPCustomAction;
Write-Host $test;

#Remove-PnPCustomAction -Identity CA_4 -Force
#Write-Host "Removed custom Action"

谢谢。

2 个答案:

答案 0 :(得分:1)

PnP配置引擎仅在网站上设置API配置并上传可能的资产。没有实际的“模板”,您可以从网站中删除,但您绝对可以删除应用于模板的配置。

例如,删除UserCustomAction配置取决于您在实际模板中所具有的功能。在示例情况下,CustomActions应用于SiteCollection级别,因此您需要记住正确使用Scope参数。请参阅https://docs.microsoft.com/en-us/powershell/module/sharepoint-pnp/Remove-PnPCustomAction?view=sharepoint-ps

中的文档

答案 1 :(得分:0)

我也遇到过类似情况,可以按照以下步骤删除“自定义”操作

第一:-

Get-PnPCustomAction -Scope All 

这将为您提供网站中的所有自定义操作,并为每个自定义操作提供一个标识

然后:-

Remove-PnPCustomAction -Identity "identity"

我希望这会有所帮助。