1. 開発者向けのドキュメント

パッチファイルを使ってSitecoreの設定をカスタマイズしてください

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

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

パッチファイルを使って、Sitecore.configファイルの設定を追加または変更できます。 SitecoreAIパッチファイルをSitecore.configファイルとマージして、実行時に使われる設定ファイルを作成します。

このウォークスルーでは、以下の方法を説明します:

パッチファイルを作成する

設定をカスタマイズするためのパッチファイルを作成するには:

  1. カスタマイズ 可能な2つのレイヤーのいずれかでファイルを作成します:

    • システム環境に依存しないようにデフォルトSitecoreAI設定をカスタマイズするには、パッチファイルを <project root>/authoring/platform/App_Config/Include/ フォルダ(カスタムレイヤーに属する)に入れてください。

    • QAや開発など特定の環境向けにSitecoreAIを設定するには、パッチファイルを <project root>/authoring/platform/App_Config/Environmentフォルダ(環境レイヤーに属します)に配置します。

  2. App_Configファイルや関連するレイヤーディレクトリ(IncludeまたはEnvironment)、そしてカスタム設定ファイルが、使用している開発環境(例えばVisual Studio)のプロジェクトに明示的に含まれていることを確認してください。

    Including a configuration file in an XM Cloud project using Visual Studio Code.
  3. パッチファイルには拡張子名で終わる名前を付け .config

  4. まずファイル内の基本的な構造から始めます:

    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
    <sitecore>
    </sitecore>
    </configuration>
  5. パッチファイルの <sitecore> セクションで、設定に追加したい設定変更を追加してください。

    注記

    パッチはapp_config/sitecore.configファイル内でのみ可能です。 web.configapp_config/layers.configファイルなど他のファイルのSettingsはパッチ適用できません。これらのファイルの設定を変更する場合は、必ず直接編集してください。

設定の適用方法をコントロールしてください

SitecoreAIパッチファイルの変更を適用する際、パッチファイル内の各要素を既存の構成の要素と、その要素名とすべての属性の組み合わせを用いてマッチングしようとします。一致があれば、SitecoreAI既存の要素を更新します。一致しなければ、SitecoreAI新しい要素を挿入します。

注記

パッチファイル要素が既存の構成で複数の要素と一致する場合、SitecoreAI最初に見つけた一致する要素に更新を適用します。したがって、その要素を一意に識別できるよう、十分な属性を指定することを強くお勧めします。

デフォルトでは、SitecoreAI構成セクションの最後にそれらの要素が属する新しい要素を挿入します。

要素の挿入方法を制御するには、SitecoreAI :

  1. 属性を使って設定を変更または追加できるXML名前空間patchsetを登録し、それらを<configuration>設定に追加してください:

    <configuration xmlns:patch="http://www.sitecore.net/xmlconfig/" 
    xmlns:set="http://www.sitecore.net/xmlconfig/set/">
  2. patch:属性を使って、要素が既存の要素に対してどこに配置されているか、または同名の既存要素を置き換えたり更新したりするかどうかを指定します。以下の属性を使用できます:

    • patch:before – は指定された要素の前に要素を挿入します。

    • patch:after – は指定された要素の後に要素を挿入します。

    • patch:attribute – は、要素の指定された属性を定義または置き換えます。同じ効果はset名前空間でも実現できます。

    • patch:delete – は指定された要素を除去します。

    • patch:instead – は指定された要素を置き換えます。

    例えば、既存のサイトwebsitemysiteの前に置くには、以下の構文を用いてください。

    <configuration xmlns:patch="http://www.sitecore.net/xmlconfig/">
      <sitecore>
        <sites>
          <site patch:before=”*[@name='website']” name=”mysite” ... />
        </sites>
      </sitecore>
    </configuration>
注記

パッチファイルの例を使ってSitecoreAI設定を変更することができます。

設定ファイルのロードオーダーを制御する

設定ファイルを読み込むSitecoreAI順序は重要で、ファイルの変更は後で読み込むファイルによって修正や上書きされることがあります。 SitecoreAI複数のファイルで同じ設定を見つけた場合、最後に読み込んだファイルが前のバージョンを上書きします。

レイヤー内で設定ファイルの読み込み順序を制御するには:

  1. /App_config/layers.configファイルで、レイヤーの定義に <loadOrder> 設定を追加してください:

    <layer name="Custom" includeFolder="/App_Config/Custom/">
    <loadOrder>
    </loadOrder>
    </layer>
  2. <loadOrder>セクション内のファイルフォルダや個別ファイルを読み込みたい順に追加してください:

    <loadOrder>
    <add path="Folder23" type="Folder" />
    <add path="Folder9/sitespecific.config" type="File" />
    <add path="Folder1" type="Folder" />
    </loadOrder>

SitecoreAI<loadOrder>設定に遭遇すると、以下の順番で設定ファイルを読み込みます。

  1. <loadOrder>セクションで指定されたフォルダやファイルが最初に読み込まれ、リストの順に読み込まれます。前の例では、まずFolder23フォルダのファイルが読み込まれ、次にsitespecific.configファイル、そしてFolder1フォルダのファイルが読み込まれます.

  2. <loadOrder>セクションで指定されていないフォルダやファイルは、2秒で読み込みます。アルファベット順に読み込まれます。フォルダのルートに配置されたファイルは、サブフォルダ内のファイルより先に読み込まれます。

設定を適用してください

最後に、変化を環境に押し付けましょう。それを行うには:

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