Moderniser les blogs Delve et les blogs classiques

Importante

Les outils de modernisation et tous les autres composants PnP sont des outils open source bénéficiant d’une prise en charge par une communauté active. Il n’existe aucun contrat de niveau de service pour la prise en charge des outils open source des canaux de support Microsoft officiels.

SharePoint a commencé à prendre en charge les blogs classiques via un modèle de site de blog à partir de SharePoint 2010 et aujourd’hui, ces sites de blogs avec leurs pages de blog fonctionnent dans SharePoint Online. L’ensemble de l’expérience de création et de publication de blogs est, cependant, comparé aux pages modernes des sites de communication modernes, très dépassé. Nous vous recommandons donc d’utiliser des sites de communication modernes pour vos futurs besoins en matière de blogs. Si vous avez aujourd’hui des sites de blog avec des pages de blog que vous souhaitez « mettre à niveau » vers des pages modernes dans un site de communication moderne, suivez les étapes décrites dans cet article.

Outre les pages de blog classiques mentionnées ci-dessus, les utilisateurs SharePoint Online peuvent également utiliser les blogs Delve. Les blogs Delve étant en cours de dépréciation, il est vivement recommandé de transformer les pages de blog Delve pertinentes pour votre entreprise en pages modernes dans un site de communication moderne.

Importante

Les blogs Delve sont mis hors service.

Étape 1 : Comprendre où se trouvent les blogs activement utilisés dans votre client

Avant de pouvoir commencer à moderniser vos sites de blog, il est important de répondre aux questions suivantes :

  • Où se trouvent les sites de blogs dans mon locataire ? Obtenir des informations sur les sites de blogs vous aidera à évaluer l’impact possible de la modernisation
  • Quels sont les sites de blogs encore activement utilisés ? Il est logique (initialement) de ne moderniser que les sites de blogs activement maintenus

Exécutez l’évaluation des pages SharePoint classiques de l’outil d’évaluation Microsoft 365 pour découvrir les pages de blog classiques et examiner leur utilisation. Si vous avez besoin d’interpréter la sortie d’une exécution du scanner de modernisation SharePoint existante, consultez la documentation du rapport de blog hérité.

Étape 2 : Préparez un site de communication cible pour recevoir les pages de blog modernisées

Les billets de blog classiques et Delve résident dans une liste dans un site de blog classique ou dans un blog Delve. Lorsque vous modernisez ces billets de blog, ils seront des pages modernes vivant dans un site moderne qui est généralement un site de communication. Donc, avant de pouvoir commencer la modernisation d’un blog, vous devrez d’abord avoir un site de communication disponible. Selon votre désir de copier les métadonnées du blog (par exemple, les catégories d’articles de blog), vous devrez configurer la bibliothèque SitePages en conséquence.

Étape 2.1 : Création du site de communication

Pour créer un site de communication, vous pouvez utiliser l’interface utilisateur SharePoint ou PowerShell PnP. L’interface utilisateur de SharePoint vous permet de :

  • Accédez à l’accueil SharePoint (icône gaufre en haut à gauche --> SharePoint)
  • Cliquez sur Créer un site
  • Cliquer sur le site Communication
  • Donnez un nom au site et cliquez sur Terminer

Lorsque vous utilisez PowerShell PnP , procédez comme suit :

# Connect to a site in your tenant
Connect-PnPOnline -Url https://contoso.sharepoint.com

# Create a new communication site based upon an English template
New-PnPSite -Type CommunicationSite -SiteDesign Topic -Url https://contoso.sharepoint.com/sites/modernblog -Title "Blog site" -Lcid 1033

Remarque

PnP PowerShell est une solution open source pour laquelle un support est assuré par la communauté active. Il n’existe pas de contrat SLA Microsoft pour le support technique relatif à cet outil open source.

Étape 2.2 : Configuration du site de communication

Remarque

Vous pouvez ignorer cette étape si vous modernisez les blogs Delve.

Un billet de blog classique peut avoir un ou plusieurs champs de métadonnées que vous souhaitez prendre en charge sur les pages de blog modernes. Si tel est le cas, vous devez définir les champs de métadonnées nécessaires dans la bibliothèque SitePages du site de communication moderne. Vous pouvez effectuer cette opération à l’aide de l’interface utilisateur SharePoint en :

  • Cliquer sur Pages dans la navigation supérieure
  • Cliquez sur le bouton + Ajouter une colonne , puis définissez la ou les colonnes nécessaires

Le champ de métadonnées le plus couramment utilisé est celui PostCategory utilisé pour catégoriser les billets de blog créés. Dans un blog classique, il s’agit d’une colonne de recherche, mais dans le site de blog moderne, elle doit être créée en tant que champ de choix à plusieurs valeurs :

champ PostCategory

Lorsque vous utilisez PowerShell PnP , procédez comme suit :

# Connect to the communication site you created in the previous step
Connect-PnPOnline -Url https://contoso.sharepoint.com/sites/modernblog

# Add the field to the SitePages library
Add-PnPField -List "SitePages" -DisplayName "PostCategory" -InternalName "PostCategory" -Type MultiChoice -AddToDefaultView -Choices "Events","Ideas","Opinions"

Étape 3a : Transformez les pages de blog classiques en pages modernes

Remarque

Consultez l’étape 3b si vous modernisez les blogs Delve.

La dernière étape du processus de modernisation des blogs consiste à transformer les articles de blog classiques en pages modernes. Cela peut être fait à l’aide de la transformation de page SharePoint, qui vous permet de lire n’importe quelle page classique (wiki, composant WebPart, blog ou page de publication) dans SharePoint 2010, SharePoint 2013, SharePoint 2016, SharePoint 2019 ou SharePoint Online et de créer la page comme une page moderne dans SharePoint Online. Dans nos conseils, nous montrons comment convertir des pages de blog classiques vivant dans SharePoint Online en pages modernes dans SharePoint Online, mais vous pouvez appliquer la même logique pour transformer des blogs locaux classiques en sites de communication modernes dans SharePoint Online.

Pour exécuter la transformation de page de blog, vous devez utiliser PnP PowerShell. L’extrait ci-dessous montre comment convertir un article de blog classique en une page moderne.

# Connect to the classic blog site
Connect-PnPOnline -Url https://contoso.sharepoint.com/sites/classicblog

# Convert the blog post with title 'Financial results Q1 2019'
ConvertTo-PnPPage -BlogPage -Identity "Financial results Q1 2019" -Overwrite -TargetWebUrl https://contoso.sharepoint.com/sites/modernblog -LogType File -LogVerbose -LogFolder "c:\temp" -KeepPageCreationModificationInformation -PostAsNews -SetAuthorInPageHeader -CopyPageMetadata

L’applet de commande ci-dessus ConvertTo-PnPPage lira la page de blog classique avec le titre « Résultats financiers du 1er trimestre 2019 » et la créera comme une page moderne dans le site de blog moderne précédemment créé (https://contoso.sharepoint.com/sites/modernblog). La transformation de page de blog :

  • Conserver les informations classiques de la page de blog auteur, éditeur, créé et modifié (-KeepPageCreationModificationInformation)
  • Définir l’auteur de page de blog classique comme auteur dans l’en-tête de page de blog moderne (-SetAuthorInPageHeader)
  • Copiez les métadonnées de la page de blog classique si les mêmes champs existent dans le blog moderne (-CopyPageMetadata)
  • Publier le blog créé en tant qu’actualités sur le site (-PostAsNews)

L’extrait de script ci-dessus a montré comment moderniser une seule page de blog, mais souvent vous souhaiteriez moderniser tous les articles de votre site de blog. Si nécessaire, le script ci-dessous peut être utilisé.

<# 

.Synopsis

    Converts all blog pages in a site. Uses PnP PowerShell: https://pnp.github.io/powershell/

    Sample includes:
        - Conversion of blog pages
        - Connecting to MFA or supplying credentials
        - Includes Logging to File, log flushing into single log file        

.Example

    Convert-BlogPages.ps1 -SourceUrl "https://contoso.sharepoint.com/sites/classicblog" -TargetUrl "https://contoso.sharepoint.com/sites/modernblog"

.Notes
    
    Useful references:
        - https://aka.ms/sppnp-pagetransformation
#>

[CmdletBinding()]
param (

    [Parameter(Mandatory = $true, HelpMessage = "Classic blog site url")]
    [string]$SourceUrl,

    [Parameter(Mandatory = $true, HelpMessage = "Target modern communication site url")]
    [string]$TargetUrl,

    [Parameter(Mandatory = $false, HelpMessage = "Supply credentials for multiple runs/sites")]
    [PSCredential]$Credentials,

    [Parameter(Mandatory = $false, HelpMessage = "Specify log file location")]
    [string]$LogOutputFolder = "c:\temp"
)
begin
{
    Write-Host "Connecting to " $SourceUrl
    
    if($Credentials)
    {
        Connect-PnPOnline -Url $SourceUrl -Credentials $Credentials -Verbose
        Start-Sleep -s 3
    }
    else
    {
        Connect-PnPOnline -Url $sourceUrl -Interactive -Verbose
        Start-Sleep -s 3
    }
}
process 
{    

    Write-Host "Modernizing blog pages..." -ForegroundColor Cyan

    $posts = Get-PnPListItem -List "Posts"

    Write-Host "pages fetched"

    Foreach($post in $posts)
    {
        $postTitle = $post.FieldValues["Title"]

        Write-Host " Processing blog post $($postTitle)"

        ConvertTo-PnPPage -Identity $postTitle `
                            -BlogPage `
                            -Overwrite `
                            -TargetWebUrl $TargetUrl `
                            -LogType File `
                            -LogVerbose `
                            -LogSkipFlush `
                            -LogFolder $LogOutputFolder `
                            -KeepPageCreationModificationInformation `
                            -PostAsNews `
                            -SetAuthorInPageHeader `
                            -CopyPageMetadata

    }

    # Write the logs to the folder
    Save-PnPPageConversionLog

    Write-Host "Blog site modernization complete! :)" -ForegroundColor Green
}

Étape 3b : Transformer des pages de blog Delve en pages modernes

La dernière étape du processus de modernisation du blog Delve consiste à transformer les billets de blog Delve en pages modernes. Cela peut être fait à l’aide de la transformation de page SharePoint, qui vous permet de lire n’importe quelle page classique (wiki, composant WebPart, blog ou page de publication) dans SharePoint 2010, SharePoint 2013, SharePoint 2016, SharePoint 2019 ou SharePoint Online et de créer la page comme une page moderne dans SharePoint Online.

Importante

Pour exécuter la transformation de page de blog Delve, vous devez utiliser la version décembre 2019 (3.16.1912.*) ou ultérieure de PnP PowerShell.

L’extrait ci-dessous montre comment convertir un billet de blog Delve en une page moderne.

# Connect to the Delve blog site
Connect-PnPOnline -Url https://contoso.sharepoint.com/portals/personal/joedoe

# Convert the Delve blog post with title 'Financial results Q1 2019'
ConvertTo-PnPPage -DelveBlogPage -Identity "Financial results Q1 2019" -Overwrite -TargetWebUrl https://contoso.sharepoint.com/sites/modernblog -LogType File -LogVerbose -LogFolder "c:\temp" -KeepPageCreationModificationInformation -PostAsNews -SetAuthorInPageHeader -DelveKeepSubTitle

L’applet de commande ci-dessus ConvertTo-PnPPage lira la page de blog Delve intitulée « Résultats financiers du 1er trimestre 2019 » et la créera comme une page moderne dans le site de blog moderne créé précédemment (https://contoso.sharepoint.com/sites/modernblog). La transformation de page de blog :

  • Conserver la page de blog Delve Informations d’auteur, d’éditeur, de création et de modification (-KeepPageCreationModificationInformation)
  • Définir l’auteur de la page de blog Delve comme auteur dans l’en-tête de page de blog moderne (-SetAuthorInPageHeader)
  • Publier le blog créé en tant qu’actualités sur le site (-PostAsNews)
  • Transformer le sous-titre du blog Delve en en-tête de rubrique de la page moderne (-DelveKeepSubTitle)

L’extrait de script ci-dessus montre comment moderniser une seule page de blog Delve, mais vous souhaiteriez souvent moderniser tous les billets de votre site de blog Delve. Si nécessaire, le script ci-dessous peut être utilisé.

Convert-DelveBlogPages.ps1