PowerShell kullanarak SharePoint'teki Tüm Sitelerdeki Özelliği Devre Dışı Bırakma
Gereksinim:Tüm SharePoint Sitelerinde Bir Özelliği Devre Dışı Bırakın.
SharePoint'te Office web uygulamalarını düzenleme lisanslarıyla dağıttıktan sonra, SharePoint'teki tüm site koleksiyonlarında istemcide aç özelliğini devre dışı bırakmak istedik. Bir özelliği devre dışı bırakmak, SharePoint web kullanıcı arayüzünden şu adrese giderek basittir:
- Site Ayarları >> Site Koleksiyonu Özellikleri
Hedef özelliği bulun ve yanındaki “Devre Dışı Bırak” düğmesine tıklayın.
Ancak bu aktiviteyi daha fazla sayıda site koleksiyonu için tekrarlamak zahmetli, değil mi? Bu nedenle, SharePoint'teki tüm sitelerdeki özellikleri devre dışı bırakmak için bu PowerShell komut dosyalarını kullanın!
PowerShell, SharePoint'teki Tüm Site Koleksiyonlarındaki Özelliği Devre Dışı Bırakacak
Bu blog yazısında, SharePoint'teki tüm sitelerde bir özelliğin nasıl devre dışı bırakılacağını size göstereceğiz. Bu, tüm sitelerinizdeki bir özelliği geçici olarak devre dışı bırakmak istiyorsanız veya sorun giderme amacıyla bir özelliği devre dışı bırakmanız gerekiyorsa yararlı olabilir. SharePoint'te "Belgeleri Varsayılan Olarak İstemci Uygulamalarında Aç" özelliğini devre dışı bırakma örneğini kullanacağız, ancak herhangi bir özelliği devre dışı bırakmak için bu kılavuzu kullanabilirsiniz.
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue
#Feature to Deactivate
$FeatureID="8a4b8de2-6fd8-41e9-923c-c7c3c00f8295"
#Get all Site collections
$SitesColl= Get-SPWebApplication | Get-SPSite -Limit ALL
#Get the Feature
$Feature = Get-SPFeature | Where {$_.ID -eq $FeatureID}
#Check if Feature exists
if($Feature -ne $null)
{
#Iterate through through each site collection and deactivate the feature
Foreach($Site in $SitesColl)
{
#Check if the Feature is activated
if (Get-SPFeature -Site $Site.Url | Where {$_.ID -eq $FeatureId})
{
#DeActivate the Feature
Disable-SPFeature -identity $FeatureID -URL $Site.URL -Confirm:$false
Write-Host "Feature has been Deactivated on "$Site.URL -f Green
}
else
{
Write-host "Feature was not activated on "$Site.URL -f Cyan
}
}
}
else
{
Write-Host "Feature doesn't exist:"$FeatureID -f Red
}
Bu komut dosyası, verilen özellik kimliğini tüm SharePoint ortamının tüm site koleksiyonlarından devre dışı bırakır.
PowerShell kullanarak SharePoint'teki tüm sitelerdeki özelliği devre dışı bırakın:
SharePoint'teki tüm sitelerdeki (web'lerdeki) bir özelliği devre dışı bırakmaya ne dersiniz? Bir özelliği tüm siteler için devre dışı bırakmak üzere bu PowerShell betiğini kullanın:
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue
#Feature to Deactivate
$FeatureID="7201d6a4-a5d3-49a1-8c19-19c4bac6e668"
#Get all webs
$WebsColl= Get-SPWebApplication | Get-SPSite -Limit ALL | Get-SPWeb -Limit ALL
#Get the Feature
$Feature = Get-SPFeature | Where {$_.ID -eq $FeatureID}
#Check if Feature exists
if($Feature -ne $null)
{
#Iterate through through each site collection and deactivate the feature
Foreach($web in $WebsColl)
{
#Check if the Feature is activated
if (Get-SPFeature -web $web.Url | Where {$_.ID -eq $FeatureId})
{
#DeActivate the Feature
Disable-SPFeature -identity $FeatureID -URL $web.URL -Confirm:$false
Write-Host "Feature has been Deactivated on "$web.URL -f Green
}
else
{
Write-host "Feature was not activated on "$web.URL -f Cyan
}
}
}
else
{
Write-Host "Feature doesn't exist:"$FeatureID -f Red
}
Bu PowerShell betiği, verilen özellik kimliğini SharePoint'teki tüm alt sitelerden devre dışı bırakır.
