Abilita l'esperienza del sito di comunicazione nei siti dei team classici

Un sito di comunicazione di SharePoint è un ottimo strumento per condividere informazioni con altri utenti dell'organizzazione. Gli utenti possono condividere notizie, report, stati e altre informazioni in un formato visivamente accattivante. A questo punto, anche qualsiasi sito del team classico può avere questa funzionalità. Eseguendo un cmdlet di PowerShell, è possibile portare le funzionalità moderne del sito di comunicazione ai siti del team classici.

Requisiti

Effetti di questa modifica

  • Nel sito viene creata una nuova pagina moderna e impostata come home page. Per visualizzare le modifiche, aprire il sito in una nuova scheda .
  • Tutti gli utenti che hanno accesso al sito visualizzano immediatamente la nuova home page con le web part e il contenuto predefiniti. Finché non si è pronti per avviare la nuova esperienza del sito di comunicazione, è possibile ripristinare la home page nella pagina precedente.
  • Sono disponibili pagine a larghezza intera con spostamento orizzontale. Il riquadro di spostamento superiore dalla visualizzazione classica è nascosto, ma può essere visualizzato nelle pagine classiche, ad esempio nella pagina delle impostazioni del sito. È ora possibile personalizzare lo spostamento in questo sito.
  • Lo script personalizzato non è consentito nel sito.
  • Il controllo delle versioni secondario nella raccolta Pagine del sito è abilitato. Altre informazioni sul controllo delle versioni
  • Le pagine del sito sono il tipo di contenuto predefinito nella raccolta Pagine del sito
  • Non vengono modificate le autorizzazioni del sito.
  • L'esperienza di elenchi e raccolte di SharePoint non viene modificata.
  • Tutti i tipi di contenuto abilitati nel sito non vengono modificati.
  • Se la raccolta siti classica aveva siti secondari, non vengono modificati.
  • Se si prevede di avviare questo sito come portale a traffico elevato o di condividere il sito con un numero elevato di utenti, assicurarsi di seguire le linee guida di avvio del portale.

Eseguire il cmdlet di PowerShell

È possibile usare SharePoint Online Management Shell o SharePoint PnP PowerShell per abilitare l'esperienza del sito di comunicazione in un sito del team classico. È consigliabile testare l'esperienza con un sito classico usato in modo minimo prima di eseguirla nei siti classici più diffusi dell'organizzazione.

Importante

Dopo aver abilitato l'esperienza del sito di comunicazione in un sito classico, non è possibile annullare la modifica.

Istruzioni per l'amministratore di SharePoint

  1. Scaricare l'ultima versione di SharePoint Online Management Shell. È necessaria la versione 20122.1200 o successiva.

    Nota

    Se hai installato una versione precedente di SharePoint Online Management Shell, vai su Installazione applicazioni e disinstallare SharePoint Online Management Shell.

  2. Connettiti a SharePoint come amministratore globale o amministratore di SharePoint in Microsoft 365. Per informazioni in merito, vedere Guida introduttiva a SharePoint Online Management Shell.

  3. Eseguire il comando riportato di seguito:

    Enable-SPOCommSite -SiteUrl <URL of target site>
    

Per altre informazioni su questo cmdlet, vedi Enable-SPOCommSite.

Istruzioni per l'amministratore del sito

  1. Informazioni su come usare i comandi di PowerShell PnP di SharePoint.

  2. In Windows 10 eseguire i comandi seguenti in PowerShell:

    Install-Module SharePointPnPPowerShellOnline
    Connect-PnPOnline –Url <Url of Targetsite> –Credentials (Get-Credential)
    Enable-PnPCommSite
    

Domande frequenti

Questo cmdlet modificherà tutti i siti classici?

  • No. Il cmdlet può essere eseguito in un sito alla volta.

Questo cmdlet modificherà il modello di sito?

  • No. Il cmdlet abilita le funzionalità del sito di comunicazione, ma il sito ha ancora il modello di sito STS#0. Il sito continua a essere visualizzato come "Sito del team (esperienza classica)" nell'interfaccia di amministrazione di SharePoint.

Perché non è possibile usare questo cmdlet nei siti di pubblicazione?

  • L'esperienza moderna del sito di comunicazione non è compatibile con le funzionalità di pubblicazione di SharePoint Server.

È possibile eseguire questo comando nel sito radice dell'organizzazione?

  • Sì, se si soddisfano i requisiti elencati all'inizio di questo articolo.

Come è possibile ottenere un elenco di tutti i siti classici in cui è abilitata l'esperienza del sito di comunicazione?

function Get-CommsiteEnabledSites{

    $adminUrl = Read-Host "Enter the Admin URL of O365 (eg. https://<Tenant Name>-admin.sharepoint.com)"
    $userName = Read-Host "Enter the username of O365 (eg. admin@<tenantName>.onmicrosoft.com)"
    $password = Read-Host "Please enter the password for $($userName)" -AsSecureString

    # set credentials
    $credentials = New-Object -TypeName System.Management.Automation.PSCredential -argumentlist $userName, $password
    $SPOCredentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($userName, $password)

    #connect to to Office 365

    try{

        Connect-SPOService -Url $adminUrl -Credential $credentials
        write-host "Info: Connected succesfully to Office 365" -foregroundcolor green

    }

    catch{

        write-host "Error: Could not connect to Office 365" -foregroundcolor red
        Break connectToO365

    }
    get-siteCollections
}



function get-siteCollections{

    write-host "----- List of classic sites with comm site feature enabled  -------" -foregroundcolor green

#Get all site collections
    $siteCollections = Get-SPOSite

    #loop through all site collections
    foreach ($siteCollection in $siteCollections){

        #set variable for a tab in the table
        $pixelsweb = 0
        $pixelslist = 0
        $enabledCommSite = Get-SPOIsCommSiteEnabled($siteCollection.url)
        $background = "white"
        if($enabledCommSite -ne ""){
            $background = "cyan"
        }
    }
}

function Get-SPOIsCommSiteEnabled($url){

    #fill metadata information to the client context variable
    $featureID = "f39dad74-ea79-46ef-9ef7-fe2370754f6f"
    $context = New-Object Microsoft.SharePoint.Client.ClientContext($url)
    $context.Credentials = $SPOcredentials
    $web = $context.Web
    $context.Load($web)
    $context.load($web.Features)

    try{

        $context.ExecuteQuery()
        $isCommSiteEnabled = $web.Features | Where {$_.DefinitionID -eq $featureID}
        $webTemplate = $web.WebTemplate

        if($webTemplate -ne "SITEPAGEPUBLISHING" -AND $isCommSiteEnabled){
            write-host "Found $($web.url)" -foregroundcolor green
            return "Enabled"

        }
    }
    catch{

        write-host "Could not find web" -foregroundcolor red

    }

    return ""
}

Get-CommsiteEnabledSites

Vedere anche

Per informazioni sulla modernizzazione automatica della home page nei siti classici, vedi Modernizzazione della home page classica.