鍋綿ブログ

C#・SharePoint・SharePoint Framework・Office365を中心に扱うブログです。

SharePointルートサイトを他のサイトと入れ替える方法

SharePointのルートサイトを他のサイトと入れ替えられるようになりました。

  • ルートサイトがクラシック機能になっている。モダンにしたい。
  • ルートサイトを全社ポータルにしており、これを刷新したいがURLの変更は嫌

などの利用シーンで活用できますね!
当記事では、この機能の効用と実行方法をご紹介します。

 

 

サイトを入れ替えると何が起きるか

適用先のサイト(ルートサイト)は別のURLにバックアップされます。
元になったサイトは無くなります。復元できませんのでご注意ください。

f:id:micknabewata:20190814144022p:plain

PowerShellコマンドと実行イメージ

入れ替えに関する制限

  • 適用先のサイトはSharePointのルートサイト または 検索センターサイト
  • 適用先のサイトはハブ サイトであってはならない
  • 元のサイトはOffice 365グループに接続していてはならない
  • 元のサイトはハブ サイトであってはならない
  • バックアップ先のサイトは既存サイトであってはならない
  • バックアップ先のサイトはゴミ箱にも存在してはならない

実行に必要な環境

  • SharePoint Online 管理シェル(最新版)

実行方法

SharePoint Online 管理シェルをインストール

こちらからインストーラーを入手してインストールを行います。

PowerShellコマンドを実行

PowerShellを起動して以下のコマンドを実行します。

# 書き換えるべき変数
$adminUPN="admin@contoso.onmicrosoft.com"
$orgName="contoso" $sourceUrl="https://contoso.sharepoint.com/sites/fabricam" $targetUrl="https://contoso.sharepoint.com" $archiveUrl="https://contoso.sharepoint.com/sites/archive" # 認証 $userCredential = Get-Credential -UserName $adminUPN -Message "Type the password." Connect-SPOService -Url https://$orgName-admin.sharepoint.com -Credential $userCredential # 入れ替え実行 Invoke-SPOSiteSwap -SourceUrl $sourceUrl -TargetUrl $targetUrl -ArchiveUrl $archiveUrl

Invoke-SPOSiteSwapコマンドの各パラメータの意味は以下の通りです。

  • SourceUrl

   元にするサイトです。このサイトが新しいSharePointルートサイトになります。

  • TargetUrl

   現在のSharePointルートサイトのURLです。
   SharePointルートサイトか検索センター以外を指定するとエラーになります。

f:id:micknabewata:20190814150500p:plain

エラーメッセージ
  • ArchiveUrl

   現在のSharePointルートサイトをバックアップする先のサイトです。
   既存サイトを指定してはいけません。
   また、同じURLがゴミ箱にあってもいけません。

 

以上、参考になれば幸いです。