2021年4月27日開催の Microsoft 365 Virtual Marathon 2021 に登壇いたしました。
セッションでは、SharePoint で必要不可欠なサイトテンプレートの機能について話をしました。
詳細は以下にセッションスライドをアップしておりますので、そちらをご確認ください。
また、セッションで使った PowerShell のコードについては以下に記載しておきます。
この内容については、さらに深堀していってブログにまとめて行きたいと思います。
ご参加いただいた皆様、ありがとうございました!
■サイトテンプレート作成
1 2 3 4 5 6 7 8 9 10 11 12 13 | Connect-SPOService -Url [SharePoint 管理センターの URL] # テンプレートファイルを自動作成 # IncludedListsパラメータにはテンプレートに含めたいリストの URL を指定 $template = Get-SPOSiteScriptFromWeb ` -WebUrl [テンプレートサイトのURL] ` -IncludeBranding ` -IncludeTheme ` -IncludeRegionalSettings ` -IncludeSiteExternalSharingCapability ` -IncludeLinksToExportedItems ` -IncludedLists ("Shared Documents", "Lists/List", "SitePages") $template | Out-File [サイトテンプレートファイルのフルパス.xml] |
■サイトテンプレート、サイトスクリプトの登録
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | # サイトスクリプトを登録 $content = Get-Content [テンプレートファイルのフルパス] -Raw $siteScript = Add-SPOSiteScript ` -Title [サイトスクリプトの名前] ` -Description [サイトスクリプトの説明文] ` -Content $content # サイトテンプレートを登録 # WebTemplateは、サイトテンプレートを利用可能にする標準テンプレートのサイトテンプレートID Add-SPOSiteDesign ` -Title [サイトテンプレートの名前] ` -WebTemplate "64" ` -SiteScripts $siteScript.Id ` -Description [サイトテンプレートの説明文] |
■PnP リモートプロビジョニングの初回利用
1 | Install-Module -Name PnP.PowerShell |
■PnP リモートプロビジョニングの2回目以降の利用
1 | Import-Module -Name PnP.PowerShell |
■PnP プロビジョニングテンプレート作成
1 2 3 4 5 6 7 8 9 | # テンプレートサイトに接続 Connect-PnPOnline ` -Url [テンプレートサイトの URL] ` -Interactive # プロビジョニングテンプレートを作成 Get-PnPSiteTemplate ` -Out [テンプレートファイルのフルパス.xml] ` -Config [コンフィグファイルのフルパス.json] |
■PnP プロビジョニングテンプレートの適用
1 2 3 4 5 6 7 8 9 | # テンプレートを適用したいサイトに接続 Connect-PnPOnline ` -Url [テンプレートを適用したいサイトの URL] ` -Interactive # テンプレートの適用 Invoke-PnPSiteTemplate ` -Path [テンプレートファイルのフルパス.xml] ` -ClearNavigation |