Sitecore PowerShell拡張スクリプトライブラリ
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
SitecoreAIには 、最も一般的な作業を自動化するための複数のPowerShellスクリプトが含まれています。オープンソースのSitecore PowerShell Extensions(SPE)モジュールはコマンドラインとスクリプト環境を提供し、Sitecore内からPowerShellを利用できます。この方法により、Windows PowerShellの構文に従ってコマンドを実行し、スクリプトを書くことができます。一部のスクリプトはContent Editorインターフェースに埋め込まれており、SPEを使用するすべてのモジュールはそれぞれ独自のスクリプトライブラリを持っています: sitecore/System/Modules/PowerShell/Script Library/JSS SXA。

!注自分でスクリプトを書いたり、既存のスクリプトのコードを閲覧したりするには、PowerShell統合スクリプト環境(ISE)をご利用ください。このツールにアクセスするには、SitecoreAIのDesktopインターフェースで、ISE > PowerShell開発ツール> Sitecoreスタートボタンをクリックしてください。
ISEを使うには、SITECORE_SPE_ELEVATION環境変数の正しい値を設定する必要があるかもしれません。
利用可能なスクリプトの種類は以下の通りです:
-
足場 – サイトやサイトコレクションの創出を支えるスクリプトで、その基盤構造を生成します。
-
コンテキストメニュー – コンテンツエディターを使用する編集者向けに利用可能なスクリプト。例えば、クリーンアップデータソーススクリプト:

-
コマンドレット – 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ではサポートされておらず、サービスの再起動や一時的な停止を引き起こす可能性があります。
