JSSレイアウト データのフィールド値
このページの翻訳はAIによって自動的に行われました。可能な限り正確な翻訳を心掛けていますが、原文と異なる表現や解釈が含まれる場合があります。正確で公式な情報については、必ず英語の原文をご参照ください。
レイアウト データをリクエストする場合、Sitecoreフィールドに返される値は2つのユース ケースをサポートする必要があります。まず、フィールドのレンダリングをサポートする必要があります。次に、Sitecoreエディターでのフィールドの編集をサポートする必要があります。
これらの要件に対処するために、Sitecoreフィールドの値には、Sitecoreから返されるレイアウト データに2つの形式があります。
fields: {
[fieldName]: {
value: '',
editable: '',
}
}
コンテンツをレンダリングするための未加工の値
fieldオブジェクトのvalueプロパティには、Sitecoreに格納されているフィールドの未処理の未レンダリングの値が含まれます。
ImageフィールドとLinkフィールドは例外で、構造が少し複雑です。例えば、Imageフィールドのvalueプロパティは、イメージ固有の属性src、alt、width、heightを含むオブジェクトです。
編集可能な値
fieldオブジェクトのeditableプロパティには、フィールドのrenderFieldパイプラインの結果が含まれます。ご想像のとおり、これは、エクスペリエンス エディターなどのSitecoreエディターを使用してルートにアクセスするときにデータがフェッチされるかどうかによって、editableプロパティに異なる値が含まれる可能性があることを意味します。
エディターがアクティブな場合、editable値には、エディターがフィールドに対して出力するすべての追加マークアップが含まれます。
レイアウト要求を行うときは、URLのsc_modeクエリ文字列パラメーターにeditまたはnormalの値を指定して、編集モードと通常のレンダリング モードを切り替えることができます。これは、デバッグ時に役立ちます。
エディターがアクティブでない場合、editableプロパティにはレンダリングされたフィールド値が含まれます。これは、Image、Rich Text、Linkなどの特定のフィールドタイプの未加工のフィールド値とは異なる場合や、renderFieldパイプラインが拡張またはカスタマイズされている場合に、レンダリングされたフィールド値と異なる場合があります。