Responsive Advertisement

Create a New SharePoint Online Wiki page using PNP PowerShell

SharePoint Patterns and Practices (PnP) contains a library of PowerShell commands (PnP PowerShell) that allows you to perform complex provisioning and artifact management actions towards SharePoint. The commands use CSOM and can work against both SharePoint Online as SharePoint On-Premises.

The Office 365 Developer Patterns and Practices PowerShell Cmdlets turn out to be lifesavers for many Developers. This will  allow you to create artifacts in your SharePoint sites, like lists, fields, etc. without needing to click around or write a complex C# application.

The PowerShell Cmdlets come in 2 versions
·         Office 365
·         On-prem

To run these scripts, you need to install the SharePoint Online Management Shell and PnP PowerShell modules if you have not yet done .For PowerShell 5.0 or newer, run this command 

Install-Module Microsoft.Online.SharePoint.PowerShell

For older versions, download and run the SharePoint Online Management Shell installation package. After that, run this command in PowerShell as administrator: 

Import-Module Microsoft.Online.SharePoint.PowerShell -DisableNameChecking

To install PnP PowerShell, run this command as administrator: 

Install-Module SharePointPnPPowerShellOnline -AllowClobber

It’s good to update both of the modules regularly to get the latest changes and possible new command-lets.If you want to run the scripts by executing .ps1 files, you also need to run this command as administrator: 

Set-ExecutionPolicy Unrestricted

And a quick note in case you are using multi factor authentication (MFA): you need to change the authentication in the scripts slightly.

·         In the Connect-SPOService command-let, remove the -Credential parameter and its value. Doing so brings up the web login instead, which will prompt you for the authentication code.

·         For Connect-PnPOnline, omit the -Credentials parameter and its value, and replace it with -UseWebLogin.

To use the library you first need to connect to your tenant:


$URL = "https://"
$PageName = " wikipage "
$PageTitle= " wikipage "
$PageContent="New WikiPage'"
#Get Credentials to connect
$Cred = Get-Credential  
#SPO Sample
$cred = Get-Credential -UserName '' -Message "Enter SPO credentials"
Try {
#Connect to SPO
Connect-SPOService -Url '' -Credential $cred  
#Creates a new wiki page '/sites/demo1/pages/wikipage.aspx' and sets the content to 'New 
Add-PnPWikiPage -PageUrl '/sites/demo1/pages/wikipage.aspx' -Content 'New WikiPage'
WikiPage'    Write-host -f Green "Done!"
catch {
write-host "Error: $($_.Exception.Message)" -foregroundcolor Red

Post a Comment