1. Sitecoreコンテンツシリアライズ

除外フィールドの設定

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

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

sitecore.jsonファイルや*modules.jsonファイルで除外フィールドを設定することで、シリアライズから除外するフィールドを指定することができます。

注記

除外フィールド機能はCLI 4.0以降から利用可能です。

除外フィールドの設定もCLIコマンドpackagewatchdiffで可能です。

excludedFields性質は、2つの性質を持つ除外フィールドの配列を含みます:fieldIddescription

大事な

同期操作は常にignore excluded fields。Sitecoreでこれらのフィールドを変更すると、CLIは変更を検知せず、データをプッシュしても上書きされません。YAMLファイルに除外フィールドがある場合、それらは含まれるフィールドの変更後か、手動で除外を削除してpull操作を行う場合にのみ削除されます。

すべてのフィールドを除外し、.ymlファイルに空のバージョンがありフィールドデータがない場合、それらの項目を .datパッケージに含めてインスタンスアイテムに添付すると、Content Editorにバージョンが欠けてしまいます。

Revisionフィールドをシリアライズから除外すると、シリアライズコマンドで公開時に問題が発生することがあります。

以下のフィールドは、デフォルトで署名生成およびシリアライズ操作から除外されます: OwnerRevisionUpdatedUpdatedByLock。Sitecore内のこれらのフィールドの変更は、シリアライズ操作をトリガーしません。これらのフィールドだけが変更された項目に変更をプッシュするには、別の(除外されていない)フィールドにも変更を加えてシリアライズノイズを発生させる必要があります。この動作は、アップデートの計画や特定の変更がシリアライズされていない理由のトラブルシューティング時に考慮すべきです。

sitecore.jsonファイルに除外フィールドを設定してください

sitecore.jsonファイルでシリアライズから除外するフィールドを指定することができます。

sitecore.jsonファイルで除外フィールドを設定するには:

  • 例えば、sitecore.jsonファイルのserializationセクションを修正します:

    ...
      "serialization": {
        "defaultMaxRelativeItemPathLength": 120,
        "defaultModuleRelativeSerializationPath": "serialization",
        "excludedFields": [
          {
            "fieldId": "badd9cf9-53e0-4d0c-bcc0-2d784c282f6a",
            "description": "__Updated by"
          },
          {
            "fieldId": "d9cf14b1-fa16-4ba6-9288-e8a174d4d522",
            "description": "__Updated"
          },
          {
            "fieldId": "5dd74568-4d4b-44c1-b513-0af5f4cda34f",
            "description": "__Created by"
          },
          {
            "fieldId": "25bed78c-4957-4165-998a-ca1b52f67497",
            "description": "__Created"
          },
          {
            "fieldId": "{52807595-0F8F-4B20-8D2A-CB71D28C6103}",
            "description": "__Owner"
          },
          {
            "fieldId": "{001DD393-96C5-490B-924A-B0F25CD9EFD8}",
            "description": "__Lock"
          }
        ]
      }
    注記

    例えば、標準テンプレートの同期を避けたい基本フィールドを指定します。これらは特定のモジュール構成とは独立してシリアライズ時に考慮されます。

modules.jsonファイルで除外フィールドを設定してください

modules.jsonファイルでシリアライズから除外するフィールドを指定することができます。

*modules.jsonファイルで除外フィールドを設定するには:

  • 例えば、*module.jsonファイルのitemsセクションを修正します:

    ...
    items": {
            "includes": [
                {
                    "name": "Apikey",
                    "path": "/sitecore/system/Settings/Services/API Keys"
                },
                {
                    "name": "Media",
                    "path": "/sitecore/media library/my-first-jss-app"
                },
                {
                    "name": "Templates",
                    "path": "/sitecore/Templates/Project/my-first-jss-app"
                },
                {
                    "name": "Content",
                    "path": "/sitecore/content/my-first-jss-app"
                },
                {
                    "name": "Layout",
                    "path": "/sitecore/Layout/Layouts/Project/my-first-jss-app"
                },
                {
                    "name": "Renderings",
                    "path": "/sitecore/Layout/Renderings/Project/my-first-jss-app"
                },
                {
                    "name": "Placeholders",
                    "path": "/sitecore/Layout/Placeholder Settings/Project/my-first-jss-app"
                }
            ],
            "excludedFields":[
                {
    				"fieldID": "{EB504D1B-B612-4FFF-B239-CA3BD7273D1B}",
    				"description": "FieldsForExclude1"
    			},
    			{
    				"fieldID": "{3C2C061E-F61F-4DF6-89EA-0B7A56348737}",
    				"description": "FieldsForExclude2"
    			},
    
    			{
    				"fieldID": "{4F7446A4-79C8-4853-A357-723665FE68DA}",
    				"description": "ExcludeUnversionFIeld"
    			}
            ]
        }
    注記

    この特定のモジュール設定ファイルからのみフィールドを指定してください。

除外項目をチェック

前述の方法のいずれかでフィールドをシリアライズから除外した後、serialization infoコマンドを使って除外したフィールドの概要や詳細を確認できます。

設定済み除外フィールドの要約を確認するには:

  • serialization infoコマンドを実行してください。出力:

    Project
      Subtrees:
        Apikey: /sitecore/system/Settings/Services/API Keys
        Media: /sitecore/media library/my-first-jss-app
        Templates: /sitecore/Templates/Project/my-first-jss-app
        Content: /sitecore/content/my-first-jss-app
        Layout: /sitecore/Layout/Layouts/Project/my-first-jss-app
        Renderings: /sitecore/Layout/Renderings/Project/my-first-jss-app
        Placeholders: /sitecore/Layout/Placeholder Settings/Project/my-first-jss-app
          FieldsFilter Excludes: 3
    
    Excluded Fields From Default Serialization Config:
          FieldsFilter Excludes: 7

設定済み除外フィールドの詳細を確認するには:

  • serialization info -tコマンドを実行してください。出力:

    Maximum subtree-relative item path allowed: 120
    
    Project
      File: C:\Repos\Sitecore.DevEx\samples\Prototype\items/Project.module.json
      Subtrees:
    ...
          Excluded Fields:
            Field Id :{EB504D1B-B612-4FFF-B239-CA3BD7273D1B}: Description :FieldsForExclude1.
            Field Id :{3C2C061E-F61F-4DF6-89EA-0B7A56348737}: Description :FieldsForExclude2.
            Field Id :{4F7446A4-79C8-4853-A357-723665FE68DA}: Description :ExcludeUnversionFIeld.
    
    Excluded Fields From Default Serialization Config:
          Excluded Fields:
            Field Id :8cdc337e-a112-42fb-bbb4-4143751e123f: Description :__Revision.
            Field Id :badd9cf9-53e0-4d0c-bcc0-2d784c282f6a: Description :__Updated by.
            Field Id :d9cf14b1-fa16-4ba6-9288-e8a174d4d522: Description :__Updated.
            Field Id :5dd74568-4d4b-44c1-b513-0af5f4cda34f: Description :__Created by.
            Field Id :25bed78c-4957-4165-998a-ca1b52f67497: Description :__Created.
            Field Id :{52807595-0F8F-4B20-8D2A-CB71D28C6103}: Description :__Owner.
            Field Id :{001DD393-96C5-490B-924A-B0F25CD9EFD8}: Description :__Lock.
この記事を改善するための提案がある場合は、 お知らせください!