1. コンテンツモデリングとプレゼンテーション

Sitecore PowerShell拡張スクリプトライブラリ

日本語翻訳に関する免責事項

このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。

SitecoreAI、最も一般的な作業を自動化するための多数の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
注記

自分でスクリプトを書いたり、既存のスクリプトのコードを閲覧したりするには、PowerShell統合スクリプト環境(ISE)をご利用ください。このツールにアクセスするには、SitecoreAIのDesktopインターフェースでSitecore Startボタンをクリックしてください> Development Tools > PowerShell ISE

How the PowerShell ISE can be accessed through the Desktop menu

ISEを使うには、SITECORE_SPE_ELEVATION環境変数の正しい値を設定する必要があるかもしれません。

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

  • 足場 – サイトやサイトコレクションの創出を支えるスクリプトで、その基盤構造を生成します。

  • コンテキストメニュー – Content Editorを使用する編集者が利用できるスクリプト。例えば、クリーンアップデータソーススクリプト:

    How the cleanup data sources script can be accessed through the Content Editor menu
  • コマンドレット – SPEで使われ、他の開発者が再利用できる軽量コマンドです。

  • Insert Item – Content EditorのInsertセクションを拡張するスクリプトです。

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

Module

Function

Description

Type of script

基本サイト

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

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

足場

マルチサイト

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

Site Collectionテンプレートに新しいフィールドを追加し、PageテンプレートにContentおよびTitleフィールドを追加します。

足場

マルチサイト

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

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

足場

足場

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

この記事を改善するための提案がある場合は、 お知らせください!