JSSレイアウトデータにおけるフィールド値

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

このページの翻訳は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パイプラインの結果が含まれています。ご想像の通り、これはeditableプロパティが、Experience EditorやHorizonなどのSitecoreエディタでルートにアクセスしている際にデータが取得されるかどうかによって異なる値を含むことを意味します。

エディタがアクティブな場合、editable値はフィールドに対してエディタが出力するすべての追加マークアップを含みます。

!注レイアウトリクエストを出す際、URL内のsc_modeクエリ文字列パラメータをeditまたはnormalの値で使い、編集モードと通常のレンダリングモードを切り替えることができます。これはデバッグ時に役立ちます。

エディタがアクティブでない場合、editableプロパティにはレンダリングされたフィールド値が含まれており、これはImage、Rich Text、Linkなど特定のフィールドタイプの生のフィールド値と異なる場合があります。また、renderFieldパイプラインが拡張・カスタマイズされている場合も同様です。

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