SharePoint Online: Disable Page Comments in Modern Sites using PowerShell
Requirement: Disable page comments in SharePoint Online Modern Sites and Communication sites.
How to Disable Page Comments in SharePoint Online?
Modern pages in SharePoint Online have a comments section at the bottom of each page for better collaboration.
Option 1: Disable Comments at the tenant level
Page comments can be turned-off at tenant level by the below settings:
Option 2: Disable Comments at the Page Level
Comments can be disabled at page level. Here is how:
Option 3: Disable Comments in SharePoint Online Pages using PowerShell
This PowerShell script disables the page comments for given site.
PnP PowerShell to Disable Comments on All Pages in a Library
How to Disable Page Comments in SharePoint Online?
Modern pages in SharePoint Online have a comments section at the bottom of each page for better collaboration.
Option 1: Disable Comments at the tenant level
Page comments can be turned-off at tenant level by the below settings:
- Navigate to SharePoint Online Admin Center: https://yourdomain-admin.sharepoint.com
- Click on Settings from left navigation
- On the Settings page, Select "Disable Comments on Site Pages."
- Click OK to save your changes.
In modern admin center, This is moved under:
- Settings >> Pages >> "Allow commenting on modern pages"
Wait for a while, the comments section disabled from all pages in the tenant. You can disable comments on modern pages at tenant level using PowerShell as well.
SharePoint Online: Turn off comments by default
Use this PowerShell to disable page comments in SharePoint Online, Tenant-wide:
$AdminCenterURL="https://crescent-admin.sharepoint.com" #Connect to SharePoint Online Connect-SPOService -Url $AdminCenterURL -Credential (Get-Credential) #Disable Comments on Site Pages at Tenant Level Set-SPOTenant -CommentsOnSitePagesDisabled $True
Option 2: Disable Comments at the Page Level
Comments can be disabled at page level. Here is how:
- Navigate to the SharePoint Online Site page >> Edit the page.
- Turn off the comments by toggle the switch from ON to OFF position and Publish the page.
Option 3: Disable Comments in SharePoint Online Pages using PowerShell
This PowerShell script disables the page comments for given site.
#Load SharePoint CSOM Assemblies Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.dll" Add-Type -Path "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\ISAPI\Microsoft.SharePoint.Client.Runtime.dll" #Config Parameters $SiteURL="https://crescent.sharepoint.com/sites/GroupIT" Try { #Get Credentials to connect $Cred= Get-Credential #Setup the context $Ctx = New-Object Microsoft.SharePoint.Client.ClientContext($SiteURL) $Ctx.Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Cred.Username, $Cred.Password) #Get the Web $Web = $ctx.Web $Ctx.Load($Web) $Ctx.ExecuteQuery() #Disable Comments in Site Pages $Web.CommentsOnSitePagesDisabled = $True $Web.Update() $Ctx.ExecuteQuery() Write-host -f Green "Page Comments has been disabled Successfully!" } Catch { write-host -f Red "Error:" $_.Exception.Message }Please note, disabling comments doesn't delete existing comments on pages. It just hides them. Turning ON comments brings the comments back!
PnP PowerShell to Disable Comments on All Pages in a Library
#Parameter $SiteURL= "https://crescent.sharepoint.com/sites/marketing/2018" $LibraryName = "SitePages" #Connect to PnP Online Connect-PnPOnline -Url $SiteURL -Credentials (Get-Credential) #Get all Pages from the Library $Pages = Get-PnPListItem -List $LibraryName #Loop through each Page ForEach($Page in $Pages) { #Disable Comments Write-host "Disabling Commnets on page:"$Page["FileLeafRef"] Set-PnPClientSidePage -Identity $Page["FileLeafRef"] -CommentsEnabled:$False }
I wish we could leave comments disabled at the tenant level and selectively enable on individual sites.
ReplyDelete