#Add references to SharePoint client assemblies and authenticate to Office 365 site
Add-Type -Path "\Software\SharePoint 2013 Client Browser v1.7\Microsoft.SharePoint.Client.dll"
Add-Type -Path "\Software\SharePoint 2013 Client Browser v1.7\Microsoft.SharePoint.Client.Runtime.dll"
$Username = Read-Host -Prompt "Please enter your username"
$Password = Read-Host -Prompt "Please enter your password" -AsSecureString
$Site = "https://XXXXXXX.sharepoint.com/sites/Test2/"
$Context = New-Object Microsoft.SharePoint.Client.ClientContext($Site)
$Creds = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($Username,$Password)
$Context.Credentials = $Creds
$csvLocation = "C:\Users\PS_SiteCollectionsToCreate.csv"
$csv = Import-Csv $csvLocation
#List Custom Templates
$Templates = $Context.Site.GetWebTemplates("1033","0")
$Context.Load($Templates)
$Context.ExecuteQuery()
$Templates | Where {$_.Name -like "*{*" } | Select Name, Description
$WCI = New-Object Microsoft.SharePoint.Client.WebCreationInformation
$WCI.WebTemplate = "{74B55E3E-D15D-4F56-BFA0-DE73BC1CF81F}#TeamSiteTemplateV2_0"
ForEach ($site in $csv)
{
$site = $($site.SiteCRelativeUrl)
$WCI.Description = "Team site "
$WCI.Title = $site
$WCI.Url = $site
$WCI.Language = "1033"
$SubWeb = $Context.Web.Webs.Add($WCI)
$Context.ExecuteQuery()
Write-Host "----------------------------------------------------------------------------" -foregroundcolor Green
Write-Host "Site Collection-Subsite" $newWeb.Title "succesfully created!!!"
Write-Host "----------------------------------------------------------------------------" -foregroundcolor Green
}
Comments
Post a Comment