เปิดใช้งาน-ปิดใช้งานคุณลักษณะบนคอลเลกชันไซต์ทั้งหมดใน SharePoint โดยใช้ PowerShell
เราใช้ “Enable-SPFeature” และ ” Disable-SPFeature” PowerShell cmdlets ใน SharePoint 2013/ไซต์ SharePoint 2016 เพื่อเปิดใช้งานหรือปิดใช้งานคุณลักษณะเช่นเดียวกับในบทความอื่นของฉัน: วิธีเปิดใช้งาน-ปิดใช้งานคุณลักษณะใน SharePoint ในบางครั้ง เราอาจต้องเปิดใช้งานคุณลักษณะสำหรับคอลเลกชันไซต์ทั้งหมดหรือปิดใช้งานคุณลักษณะบนไซต์ทั้งหมด นี่คือสคริปต์ PowerShell ของฉันที่จะทำเช่นนั้น
เปิดใช้งานฟีเจอร์สำหรับไซต์คอลเลกชันทั้งหมดใน SharePoint:
ในกรณีของฉัน ฉันต้องเปิดใช้งานฟีเจอร์ “เปิดเอกสารในแอปพลิเคชันไคลเอนต์” ในทุกไซต์คอลเลกชันภายใต้เว็บแอปพลิเคชันเพื่อบังคับให้เปิดเอกสารในไคลเอนต์ Office เช่น Microsoft Word แทนเว็บแอป Office เนื่องจากข้อจำกัดด้านสิทธิ์การใช้งาน
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue
#variables
#$WebAppURL = "https://intranet.crescent.com"
$FeatureName ="OpenInClient"
#Get the Web Application
$webApp = Get-SPWebApplication -Identity $WebAppURL
#Get all site collections with in the web app
$SitesCollection = $WebApp | Get-SPSite -limit all
#Iterate through each site
foreach ($site in $SitesCollection)
{
#Check if feature is already activated
$feature = Get-SPFeature -site $site.Url | Where-object {$_.DisplayName -eq $FeatureName}
if($feature -eq $null)
{
#Enable the feature
Enable-SPFeature -Identity $FeatureName -url $site.url -Confirm:$False
Write-host "Feature Activated on $($site.URL)" -ForegroundColor Green
}
else
{
Write-host "Feature is already Active on $($site.URL)" -ForegroundColor Red
}
}
PowerShell เพื่อปิดใช้งานคุณลักษณะในทุกไซต์:
ข้อกำหนด: ปิดใช้งานฟีเจอร์ "การเปลี่ยนเส้นทางมือถือ" บนไซต์ทั้งหมดในแอปพลิเคชันเว็บ SharePoint 2013
Add-PSSnapin Microsoft.SharePoint.PowerShell -ErrorAction SilentlyContinue
#Variables
$WebAppURL = "https://intranet.crescent.com"
$FeatureName = "MobilityRedirect"
#Disable Mobile View feature on all sites in the web application
$WebsCollection = Get-SPWebApplication $WebAppURL | Get-SPSite -Limit ALL | Get-SPWeb -Limit ALL
#Itereate through each web
ForEach($Web in $WebsCollection)
{
#Check if feature is already activated
$feature = Get-SPFeature -web $Web.Url | Where-object {$_.DisplayName -eq $FeatureName}
if($feature -ne $null)
{
#Disable the Mobile browser view feature
Disable-SPFeature -identity $FeatureName -URL $Web.URL -Force -Confirm:$false
write-host "Mobile Redirect feature deactivated at site: $($Web.Url)"
}
}