SharePointサイトは、SharePointのスタートページで「サイトの作成」を選び、チームサイトかコミュニケーションサイトかを決めて名前を入れれば、数秒でできあがります。迷うのは操作より、どちらの種類を選ぶか、URLと言語をどう決めるか、誰にサイト作成を許すかの3点です。この記事では、2種類のサイトの選び方、画面からの作成手順とページの追加、New-SPOSiteとREST APIによる一括作成、サイトスクリプトで構成をそろえる方法、管理センターでサイト作成を制御する設定までを、Microsoft Learnの記載とコード例で整理しました。
部署やプロジェクトで共同編集するならチームサイト、少人数が書いて全社が読むならコミュニケーションサイトを選びます。チームサイトを選ぶとMicrosoft 365グループも同時に作られる点が、2つの最大の違いです。作成時に入れるサイトアドレスと言語は後から変えにくいため、命名規則を決めてから作ります。
サイトが10を超える規模になったら、画面での手作業をやめ、New-SPOSiteかREST APIで作成し、サイトスクリプトでリストやナビゲーションを自動で入れる構成に切り替えます。あわせて管理センターでサイト作成を許す範囲を決めておかないと、Teams経由のサイトも含めて数が膨らみます。
チームサイトとコミュニケーションサイトを用途と作成物の違いで選ぶ
チームサイトを作るとMicrosoft 365グループと権限が同時にできる仕組み
SharePoint でサイトを作成するの手順では、チームサイトを選ぶとMicrosoft 365グループも作成されます。グループのメンバーがそのままサイトの編集者になり、グループのメールアドレス、予定表、Teamsの追加先も1つのグループに束ねられます。
この仕組みのおかげで、メンバーの出入りをグループ側で管理すれば、サイトの権限を個別に触る必要がありません。逆に言えば、閲覧だけさせたい人を大勢抱える用途には向きません。SharePoint全体の中でのサイトの位置づけはSharePointとは何かと導入判断の基準で解説しています。
少人数が書いて多数の社員が読むコミュニケーションサイトを選ぶ条件
コミュニケーションサイトはグループを作らず、所有者とメンバーと閲覧者をSharePointのグループで管理します。総務からの通知、規程集、製品情報のように、書き手が数名で読み手が数百名いる用途ならこちらです。ナビゲーションを上部に並べるレイアウトで、ニュースを全面に出す構成になっています。
社内ポータルのトップを作る場合も、土台はコミュニケーションサイトです。ポータルとして複数のサイトをハブでまとめる設計とWebパーツの選び方は、SharePointで社内ポータルを作る実装手順に分けて書いています。
3種類のサイトで同時にできる作成物とテンプレート値を一覧で比較する表
PowerShellやAPIでサイトを作るときは、種類をテンプレート値で指定します。値はREST を使用してモダンな SharePoint サイトを作成するとサイト テンプレートとサイト スクリプトの概要の記載です。
| 種類 | 同時に作られるもの | 作成時の値 | サイトテンプレートの値 |
|---|---|---|---|
| チームサイト(グループ接続) | Microsoft 365グループ | グループ作成側で作る | 64 |
| チームサイト(グループなし) | なし | STS#3 | 1 |
| コミュニケーションサイト | なし | SITEPAGEPUBLISHING#0 | 68 |
グループなしのチームサイトは画面の作成ボタンからは選べず、管理センターかスクリプトで作ります。Teamsもメールも要らず、部署内の文書置き場だけ欲しい場合に使う型です。
サイトの作成からテンプレート選択と名前の入力までの手順と所要時間
サポートページの手順を、実際の画面の順に並べると次のとおりです。
- SharePointのスタートページで「+サイトの作成」を選ぶ
- 「チームサイト」か「コミュニケーションサイト」を選ぶ
- テンプレートを選び、「テンプレートを使用」を選ぶ
- サイト名を入力する(入力を始めると残りの欄が表示される)
- 説明、サイトアドレス、チームサイトならグループのメールアドレスを確認する
- プライバシー設定と既定の言語を選び、「サイトの作成」を選ぶ
- メンバーや所有者を追加し、「完了」を選ぶ
サイトは数秒で使えるようになります。テンプレートの一覧には、Microsoftが用意したものに加えて、組織が登録したテンプレートが「組織から」タブに並びます。この組織用のテンプレートの作り方は、後の章で説明する内容です。
サイトアドレスに使える記号と既存URLと重なったときの自動採番
サイトアドレスに使える記号は、アンダースコア、ダッシュ、単一引用符、ピリオドだけです。ピリオドは先頭と末尾に置けません。アドレスは後から変えにくいので、サイト名から自動で入った候補をそのまま使わず、部署コードなど英字の短い名前を自分で入れておくほうが確実です。
同じアドレスのサイトがすでにある場合は、自動で別のアドレスに変わります。サイトを作成するの例では、/sites/marketing が使用中なら /sites/marketing2 が提案される仕組みです。削除したサイトのアドレスを使い直したいときは、そのサイトを完全に削除するか、アドレス変更で残ったリダイレクトを消す必要があります。
既定の言語とタイムゾーンを作成時に決めておく理由と後から直せる範囲
管理センターでの作成手順の注記では、サイトのプライマリ言語は設定後に変更できないとされています。英語圏の拠点と共有するサイトでも、主な利用者が日本語なら日本語で作り、複数言語のインターフェイスを後から有効にする順番にします。
タイムゾーンは事情が違い、作成後もサイトの地域設定(/_layouts/15/regionalsetng.aspx)で変えられます。とはいえ、予定表やリストの日時が9時間ずれた状態で運用を始めると、入力済みのデータの見え方が混乱します。管理センターの「サイトの作成」設定で、新しいサイトの既定のタイムゾーンを東京にしておくのが手堅い方法です。
ページを追加してサイトの中身を作る手順とGraph APIでの自動投稿
新しいページを作成して発行するまでの操作の流れと下書き状態の扱い
サイトができたら、ホームページとは別にページを足して中身を作ります。サイトの「+新規」から「ページ」を選び、テンプレートを選んでタイトルとWebパーツを置き、「発行」を押すまでは下書きのままです。下書きの間は作成者と編集権限を持つ人にしか見えないため、書きかけのページが全社に出ることはありません。
ページはサイトの「サイトのページ」ライブラリに .aspx ファイルとして保存されます。ライブラリにページの承認フローを設定している場合、発行しても承認が終わるまで公開されません。この挙動は次のAPIでも同じです。
Graph APIのsitePage作成とpublishでお知らせを自動投稿するコード
定型のお知らせを毎月出すような用途なら、Microsoft Graphでページを作れます。sitePage の作成に必要なアクセス許可は Sites.ReadWrite.All で、本文に @odata.type を入れないと解析に失敗します。
POST https://graph.microsoft.com/v1.0/sites/{site-id}/pages
Authorization: Bearer {token}
Content-Type: application/json
{
"@odata.type": "#microsoft.graph.sitePage",
"name": "notice-2026-11.aspx",
"title": "11月の社内お知らせ",
"pageLayout": "article",
"showComments": false,
"canvasLayout": {
"horizontalSections": [
{
"layout": "oneColumn",
"id": "1",
"columns": [
{ "id": "1", "webparts": [ { "innerHtml": "<p>本文をここに書きます。</p>" } ] }
]
}
]
}
}
// 201 Created の応答にある id を使って発行する(成功時は 204 No Content)
POST https://graph.microsoft.com/v1.0/sites/{site-id}/pages/{page-id}/microsoft.graph.sitePage/publish
作成直後のページは publishingState がチェックアウト状態(版 0.1)で、publishを呼ぶまで利用者には見えません。APIで置けるWebパーツはテキストと、画像・ボタン・クイックリンクなど公式の一覧にある14種類だけです。アプリ登録とトークンの取り方はMicrosoft Graph APIの権限設計と呼び出し手順を参照してください。
PowerShellとREST APIでサイト作成を自動化し命名と構成をそろえる
New-SPOSiteでコミュニケーションサイトをCSVから一括作成するスクリプト
部署ごとに同じ形のサイトを20も30も作るなら、SharePoint Online管理シェルのNew-SPOSiteを使います。実行にはSharePoint管理者以上の権限が必要で、-StorageQuota はMB単位の必須パラメーターです。
# sites.csv の中身(1行目は列名)
# Url,Title,Owner
# https://contoso.sharepoint.com/sites/soumu,総務部,[email protected]
# https://contoso.sharepoint.com/sites/jinji,人事部,[email protected]
Connect-SPOService -Url https://contoso-admin.sharepoint.com
# 日本語(1041)で使えるテンプレート名を先に確かめる
Get-SPOWebTemplate -LocaleId 1041 | Select-Object Name, Title
Import-Csv .\sites.csv -Encoding UTF8 | ForEach-Object {
New-SPOSite -Url $_.Url -Title $_.Title -Owner $_.Owner `
-StorageQuota 102400 -Template "SITEPAGEPUBLISHING#0" `
-LocaleId 1041 -TimeZoneId 20 -NoWait
}
Template と LocaleId は Get-SPOWebTemplate が返す組み合わせでないと失敗します。所有者に指定できるのはメールが有効なユーザーだけで、セキュリティグループは指定できません。同じURLの削除済みサイトがごみ箱に残っていると作成に失敗するため、作り直しの前にごみ箱を確認します。容量の割り当てを手動にしている場合の考え方はSharePointの容量確認と削減の手順にまとめています。
SPSiteManager/createの例とSiteStatusの5つの値の読み方
Webアプリやワークフローからサイトを作るなら、REST の _api/SPSiteManager/create を呼びます。コミュニケーションサイトとグループなしのチームサイトを作れ、テンプレートは WebTemplate で指定します。
POST https://contoso.sharepoint.com/_api/SPSiteManager/create
Accept: application/json;odata.metadata=none
Content-Type: application/json
odata-version: 4.0
{
"request": {
"Title": "経営企画室",
"Url": "https://contoso.sharepoint.com/sites/keiei",
"Lcid": 1041,
"ShareByEmailEnabled": false,
"WebTemplate": "SITEPAGEPUBLISHING#0",
"SiteDesignId": "f6cc5403-0d63-442e-96c0-285923709ffc",
"Owner": "[email protected]"
}
}
// 応答例:{ "SiteId": "...", "SiteStatus": 2, "SiteUrl": "https://contoso.sharepoint.com/sites/keiei" }
// 状態の確認:GET /_api/SPSiteManager/status?url='https%3A%2F%2Fcontoso.sharepoint.com%2Fsites%2Fkeiei'
SiteStatus は0が存在しない、1がプロビジョニング中、2が準備完了、3がエラー、4が同じURLのサイトが既にある、の意味です。1が返ったら数秒おきに status を呼び、2になってから後続の処理に進めます。アプリのみのコンテキストで呼ぶ場合は Owner が必須です。SiteDesignId の値は、Blankが f6cc5403…、Showcaseが 6142d2a0… と公式に示されています。
サイトスクリプトJSONでリストとナビとハブ参加を作成時に自動適用する
サイトを作るたびに同じリストやリンクを手で足しているなら、サイトスクリプトに任せます。サイト テンプレート JSON スキーマの動詞を並べたJSONを登録し、サイトテンプレートとして作成画面に出します。
{
"$schema": "https://developer.microsoft.com/json-schemas/sp/site-design-script-actions.schema.json",
"actions": [
{ "verb": "createSPList", "listName": "問い合わせ台帳", "templateType": 100,
"subactions": [
{ "verb": "addSPField", "fieldType": "Text", "displayName": "依頼者", "addToDefaultView": true },
{ "verb": "addSPField", "fieldType": "DateTime", "displayName": "期限", "addToDefaultView": true }
] },
{ "verb": "addNavLink", "url": "/Lists/問い合わせ台帳", "displayName": "問い合わせ台帳", "isWebRelative": true },
{ "verb": "setRegionalSettings", "timeZone": 20, "locale": 1041, "hourFormat": "24" },
{ "verb": "joinHubSite", "hubSiteId": "{hub-site-id}" }
]
}
# 登録(WebTemplate 64=チームサイト、68=コミュニケーションサイト)
$script = Get-Content .\site-script.json -Raw -Encoding UTF8 | Add-SPOSiteScript -Title "部署サイト標準"
Add-SPOSiteDesign -Title "部署サイト標準" -WebTemplate "68" -SiteScripts $script.Id
上限は、テナントあたりサイトスクリプト100件・サイトテンプレート100件です。作成画面から非同期で適用する場合は1スクリプト300アクションまたは100,000文字まで、Invoke-SPOSiteDesign で同期的に適用する場合は30アクションまでに制限されます。スクリプトは同じサイトに再実行しても重複を作らない設計で、既存のサイトに後から当てて構成をそろえる用途にも使える仕組みです。リストの列設計そのものはSharePointリストの列設計とビューで扱っています。
サイトの作成権限を管理センターで制御して乱立を止める設定手順
ツールからのサイト作成を許可するかと承認ページへ誘導する設定
SharePoint のサイト作成を管理するによると、既定では利用者全員がコミュニケーションサイトとグループ接続のチームサイトを作れます。管理センターの「設定」から「サイトの作成」を開くと、次の3つを決められます。
- SharePoint、OneDrive、PnP PowerShell、REST APIからのサイト作成を許可するか
- 組み込みの作成画面を止め、社内の申請ページのURLへ誘導するか
- グループ接続のチームサイトを /sites と /teams のどちらに作るか、既定のタイムゾーンと容量の上限
社員100名を超えて部署サイトの命名がそろわなくなってきたら、作成を申請制にして、承認後に前の章のスクリプトで情シスが作る運用に切り替えます。数十名の会社で申請制にすると、作成待ちが業務を止めるだけなので見送ります。
サイト作成を止めてもTeamsとグループ作成からサイトが増える抜け道
この設定には大きな穴があります。サイト作成を禁止しても、Microsoft 365グループやTeamsのチームを作る機能は残り、グループができるたびにチームサイトも1つ作られる仕組みです。SharePointの画面だけ止めて安心していると、Teams経由で同じ数だけサイトが増えていきます。サイト作成のほかに管理センターで最初に決めておく外部共有やアクセス制御の項目は、SharePoint管理センターの初期設定で一覧にしています。
サイトの数を本気で抑えるなら、グループの作成を特定のセキュリティグループに限る設定まで入れる必要があります。チームの作成制限と命名規則の決め方はTeamsとSharePointの関係と乱立を防ぐ運用ルールで整理しています。
サブサイトを無効にしてハブサイトで束ねる構成と2,000件の上限
部署の下に課のサイトを作りたくなったとき、サブサイトは使いません。管理センターの従来の設定ページでは、すべてのサイトでサブサイトの作成を無効にでき、Microsoftも代わりにハブサイトを勧めています。課ごとに独立したサイトを作り、部署のサイトをハブにして関連付けます。
SharePoint でハブ サイトを作成するによると、ハブは組織あたり最大2,000個で、ハブに関連付けるサイトの数には制限がありません。既に別のハブに関連付けているサイトはハブにできない点と、関連付けできる人を空欄にすると全員が関連付けられる点に注意します。
作成後に変えにくい設定項目とサイトの作り直しを避けるための判断基準
サイトアドレス変更の制約:ハブは不可・同時100件・約10分の読み取り専用
URLの付け間違いは、サイト アドレスを変更するの手順で直せます。ただし制約が多く、ハブサイト、ロック中のサイト、BCS接続のあるサイトは変更できません。/sites から /teams への移動もできず、変更中の約10分はサイトが読み取り専用になります。
# 変更できるかだけを先に検証する
Start-SPOSiteRename -Identity https://contoso.sharepoint.com/sites/project-x `
-NewSiteUrl https://contoso.sharepoint.com/sites/project-y -ValidationOnly
旧アドレスにはリダイレクトが作られますが、ページ上のWebパーツに埋め込まれたURL、Power Appsのカスタムフォーム、ハブへの関連付けは自動では直りません。アドレス変更は後始末が多い操作だと考え、作成前に命名規則を決めるほうが安く済みます。
画面で作るかスクリプトで作るかを作成数と統制の要否で決める境界
判断はサイトの数で決めます。全社で10サイト程度、年に数件しか増えないなら、画面から作り、作成者に命名規則を守ってもらう運用で十分です。スクリプトを書く手間のほうが大きくなります。
年に20件以上作る、部署サイトの構成を全社でそろえたい、作成を申請制にしたい、のどれかに当てはまるなら、サイトスクリプトとREST APIで作成を仕組み化する段階です。当社では、サイト構成と命名規則の設計、サイトテンプレートの作成、申請フォームから自動でサイトを作る仕組みまでをMicrosoft 365・Copilot導入支援としてお受けしています。今あるサイトの一覧があれば、どこから標準化するかを具体的にご提案できます。
よくある質問
SharePointサイトの作り方について、情シスの担当者やサイト所有者からよく寄せられる質問をまとめました。
既定の設定では、ライセンスを持つ利用者なら誰でも、SharePointのスタートページからチームサイトとコミュニケーションサイトを作れます。管理者が管理センターの「サイトの作成」でサイト作成を止めている場合は、作成ボタンが出ないか、社内の申請ページへ誘導される仕組みです。その場合も、TeamsやMicrosoft 365グループの作成が許可されていれば、チームを作るとサイトが1つ作られます。
サイトのURLは後から変更できますか?
SharePoint管理者なら、管理センターかPowerShellの Start-SPOSiteRename で変更できます。ただし、ハブサイトやロック中のサイトは対象外で、/sites から /teams への移動もできません。変更中の約10分はサイトが読み取り専用になり、Webパーツに埋め込んだURLは手で直す必要があります。作成前に命名規則を決めておくのが確実です。
サイトを作ったらURLの末尾に2が付いたのはなぜですか?
同じアドレスのサイトがすでにあると、SharePointは使える別のアドレスを自動で提案します。/sites/marketing が使用中なら、提案されるのは /sites/marketing2 のようなアドレスです。削除したサイトやアドレス変更の前のURLも、ごみ箱やリダイレクトとして残っている間は使用中と扱われます。元のアドレスを使うには、サイトの完全な削除かリダイレクトの削除が必要です。
サイトの「+新規」から「ページ」を選び、テンプレートを選んでタイトルとWebパーツを置いてから「発行」を押します。発行するまでは下書きで、作成者と編集権限のある人にしか見えません。毎月のお知らせのように定型のページを繰り返し作るなら、Microsoft Graphの sitePage 作成APIと publish を組み合わせて自動化できます。
チームサイトとコミュニケーションサイトはどちらを作ればよいですか?
メンバー全員がファイルを編集する部署やプロジェクトならチームサイト、数名が書いて多くの社員が読む通知や規程の置き場ならコミュニケーションサイトです。チームサイトはMicrosoft 365グループと一緒に作られ、Teamsも追加できます。グループが要らない文書置き場なら、管理者がグループなしのチームサイト(STS#3)を作る方法もあります。
関連記事
- SharePointで社内ポータルを作る実装手順|サイト構成・Webパーツ・権限・ナビ設計を上限値から解説:作ったサイトをハブで束ねて社内ポータルにする設計。
- SharePointとは?できること・OneDriveやTeamsとの違いと導入判断の基準:サイトを作る前提になるSharePoint全体の役割。
- TeamsとSharePointの関係|チーム作成で増えるサイトの実体と乱立を防ぐ運用ルール:Teams経由で増えるサイトの抑え方。
- SharePointリストとは?列設計・ビュー・5000件のしきい値とPower Apps連携を実装目線で解説:サイトに置くリストの列設計と上限。
- SharePointの容量確認と削減|計算式・PowerShell・バージョン履歴の設定手順:サイトを増やしたあとの容量の確認と監視。