---
title: "Sitecore PowerShell拡張スクリプトライブラリ"
slug: "the-sitecore-powershell-extensions-script-library"
abstract: "SitecoreAIには、最も一般的な作業を支援するためのスクリプトがいくつか含まれています。"
---
# Sitecore PowerShell拡張スクリプトライブラリ

[SitecoreAIには](https://doc.sitecore.com/sai/en/users/sitecoreai/sitecoreai.html) 、最も一般的な作業を自動化するための複数のPowerShellスクリプトが含まれています。オープンソースのSitecore PowerShell Extensions(SPE)モジュールはコマンドラインとスクリプト環境を提供し、Sitecore内からPowerShellを利用できます。この方法により、Windows PowerShellの構文に従ってコマンドを実行し、スクリプトを書くことができます。一部のスクリプトはContent Editorインターフェースに埋め込まれており、SPEを使用するすべてのモジュールはそれぞれ独自のスクリプトライブラリを持っています: *sitecore/System/Modules/PowerShell/Script Library/JSS SXA*。

![The Sitecore PowerShell extensions script library in the Content Editor](https://doc.sitecore.com/api/markdown-image/sai/ja/developers/sitecoreai/images/headless-site-spe-script-library.png)

> !注自分でスクリプトを書いたり、既存のスクリプトのコードを閲覧したりするには、PowerShell統合スクリプト環境(ISE)をご利用ください。このツールにアクセスするには、SitecoreAIのDesktopインターフェースで、ISE > PowerShell開発ツール> Sitecoreスタートボタンをクリックしてください。
> 
> ![How the PowerShell ISE can be accessed through the Desktop menu](https://doc.sitecore.com/api/markdown-image/sai/ja/developers/sitecoreai/images/ISE-in-menu.png)
> 
> ISEを使うには、[SITECORE\_SPE\_ELEVATION](https://doc.sitecore.com/sai/ja/developers/sitecoreai/deploying-sitecoreai/deploy-app/manage-an-environment/environment-variables.html#UUID-985fb753-4291-b5ef-bbc5-4c0371a5846e_section-idm4651935077475233423567601831 "SITECORE_SPE_ELEVATION")環境変数の[正しい値を設定する](https://doc.sitecore.com/sai/ja/developers/sitecoreai/deploying-sitecoreai/deploy-app/manage-an-environment/environment-variables/manage-environment-variables-in-the-deploy-app.html#UUID-7365786e-d145-fedc-f7d0-93d6d09b38c3_section-idm1733327493337612 "Edit an environment variable")必要があるかもしれません。

利用可能なスクリプトの種類は以下の通りです:

-   足場 – サイトやサイトコレクションの創出を支えるスクリプトで、その基盤構造を生成します。
    
-   コンテキストメニュー – コンテンツエディターを使用する編集者向けに利用可能なスクリプト。例えば、クリーンアップデータソーススクリプト:
    
    ![How the cleanup data sources script can be accessed through the Content Editor menu](https://doc.sitecore.com/api/markdown-image/sai/ja/developers/sitecoreai/images/49199728150943779499931A70CA2B68.png)
    
-   コマンドレット – SPEで使われ、他の開発者が再利用できる軽量コマンドです。
    
-   Insert Item – コンテンツエディターの**Insert**セクションを拡張するスクリプトです。
    

以下の表は、Sitecore PowerShell拡張スクリプトライブラリ内のスクリプトモジュール(スクリプトがモジュールフォルダに保存されている)とその機能、記述、スクリプトの種類を説明しています。

モジュール

機能

概要

文字の種類

基本サイト

ホームレンダリングを追加

サイトの基本的なコンテンツ構造を構築します。

足場

マルチサイト

コンテンツフィールドの追加

サイトコレクションテンプレートに新しいフィールドを追加し、ページテンプレートにはコンテンツおよびタイトルフィールドを追加します。

足場

マルチサイト

ホームアイテムタイトルフィールドを設定しましょう

サイト作成後にホームアイテムのタイトルを設定します。

足場

足場

Add-JSSTenant

新しいヘッドレスサイトコレクションを作成するために使われるすべての機能が含まれています。

コマンドレット

足場

Get-AllJSSSite

すべてのヘッドレスサイトを手に入れます。

コマンドレット

足場

Get-AllJSSTenant

すべてのヘッドレスサイトコレクションを取得します。

コマンドレット

足場

Get-JSSSiteDefinition

ヘッドレスサイトモジュールを手に入れます。

コマンドレット

足場

Get-JSSTenantDefinition

ヘッドレスサイト収集モジュールを手に入れます。

コマンドレット

足場

ヘッドレスサイトモジュールのインストール

ヘッドレスサイトモジュールをインストールします。

コマンドレット

足場

ヘッドレスサイト収集モジュールのインストール

ヘッドレスサイト収集モジュールをインストールします。

コマンドレット

足場

ヘッドレスサイト

コンテキストメニューの挿入オプションにスクリプトを追加し、ユーザーが新しいヘッドレスサイトを作成できるようにします。

項目を挿入

足場

ヘッドレスサイトコレクション

コンテキストメニューの挿入オプションにスクリプトを追加し、ユーザーが新しいヘッドレスサイトコレクションを作成できるようにします。

項目を挿入

足場

ニュー・JSSテナント

新しいヘッドレスサイトコレクションを作成するための関数を含みます。

コマンドレット

足場

New-JSSSite

新しいヘッドレスサイトを作成するために使われる関数が含まれています。

コマンドレット

## カスタムPowerShellスクリプトのベストプラクティスと制限事項

ユーザーが作成したスクリプトについては、SitecoreAIは1回のPowerShell操作で処理可能なアイテムの上限を定めていません。コンテンツサイズ、言語やバージョンの数、カスタムパイプライン、利用可能なメモリによっては、System.OutOfMemoryExceptionエラーのリスクがあります。

メモリの枯渇やサービスの不安定さを防ぐために、以下のガイドラインに従ってください:

-   大規模な作成、更新、公開作業は必ず小規模に処理してください。実際の出発点は、重作業の場合1バッチあたり200〜500点です。
-   コンテンツツリー全体を読み込みたりループしたり、非常に大きなアイテムリストをメモリに保存するスクリプトは避けてください。
-   大きなアイテムコレクションを変数に保存しないでください。アイテムをストリームとして処理し、バッチ間で参照を解放します。
-   重いPowerShellジョブは営業時間外にスケジュールし、他のリソース集約型のタスクと並行して実行するのは避けましょう。
-   まずは非本番環境で小規模にテストし、メモリ使用状況を監視しながらバッチサイズを徐々に増やしましょう。
-   長時間実行するジョブを単一の長期間スクリプトを実行するのではなく、複数の実行に分割する。

大規模で無限のPowerShell操作はSitecoreAIではサポートされておらず、サービスの再起動や一時的な停止を引き起こす可能性があります。