レンダリングと配信

メモ

単一ページアプリケーションフレームワークを基にしたクライアント側レンダリング(React など)が必要なプロジェクトでは、SPA エディターを使用することをお勧めします。詳細情報を参照してください。

AEMコンテンツは、Sling Default Servletsを介して簡単にレンダリングでき、JSONやその他の形式をレンダリングできます。

これらの既製のレンダラーは一般に、リポジトリを調べて、コンテンツをそのまま返します。

また、AEM は、Sling を介して、レンダリングされるスキーマとコンテンツのフルコントロールを取得するカスタム sling レンダラーの開発および展開もサポートします。

Content Services Default Rendererは、標準のSling DefaultsとCustom Developmentの間のギャップを埋め、開発を行わずにレンダリングされたコンテンツの多くの側面をカスタマイズおよび制御できます。

次の図に、コンテンツサービスのレンダリングの構造を示します。

chlimage_1-15

JSON のリクエスト

<RESOURCE.caas[を使用します。<EXPORT-CONFIG][.<export-config>.jsontoは JSONをリクエストします。]

リソース /content/entities
または
の下のエンティティリソース/contentの下のコンテンツリソース
EXPORT-CONFIG

オプション

/apps/mobileapps/caas/exportConfigs/EXPORT-CONFIG

にある書き出し設定を省略すると、デフォルトの書き出し設定が適用されます

DEPTH-INT

Slingレンダリングで使用される子のレンダリング用のOPTIONALdepth再帰

書き出し設定の作成

書き出し設定を作成して、JSON レンダリングをカスタマイズできます。

設定ノードは、/apps/mobileapps/caas/exportConfigs.​の下に作成できます。

ノード名 設定の名前(レンダリングセレクター用)
jcr:primaryType nt:unstructured

次の表に、書き出し設定のプロパティを示します。

名前 デフォルト(設定されていない場合) 説明
includeComponents String[] すべてを含む sling:resourceType JSON書き出しから、指定されたsling:resourceTypeを持つノードの詳細を除外
excludeComponents String[] 何も除外しない sling:resourceType JSON書き出しから指定されたsling:resourceTypeを持つノードの詳細のみを含める
excludePropertyPrefixes String[] 何も除外しない プロパティのプレフィックス 指定されたプレフィックスで始まるプロパティをJSON書き出しから除外する
excludeProperties String[] 何も除外しない プロパティ名 JSON書き出しから指定したプロパティを除外する
includeProperties String[] すべてを含む プロパティ名

excludePropertyPrefixesが
に設定されている場合、除外するプレフィックスと一致するにもかかわらず、指定されたプロパティが含まれます。

else (excludeプロパティは無視)は、次のプロパティのみを含みます。

includeChildren String[] すべてを含む 子の名前 JSON書き出しから指定した子を除外
excludeChildren String[]

何も除外しない 子の名前 JSON書き出しから指定された子のみを含め、他の子を除外する
renameProperties String[]

何も変更しない <actual_property_name>,<replacement_property_name> 置換を使用してプロパティを名前変更

リソースタイプの書き出しの上書き

/apps/mobileapps/caas/exportConfigs.​の下に設定ノードを作成します。

name resourceTypeOverrides
jcr:primaryType nt:unstructured

次の表に、プロパティを示します。

名前 デフォルト(設定されていない場合) 説明
<selector_to_inc> String[] - sling:resourceType 次のSlingリソースタイプの場合は、デフォルトのCaaS json書き出しを返さないでください。
リソースを
<resource>としてレンダリングして、顧客のJSON書き出しを返します。<selector_to_inc>.json

既存のコンテンツサービスの書き出し設定

コンテンツサービスには 2 つの書き出し設定があります。

  • デフォルト(設定が指定されていません)
  • ページ(サイトのページをレンダリングする)

デフォルト書き出し設定

リクエストされた URI に設定が指定されている場合は、コンテンツサービスのデフォルト書き出し設定が適用されます。

<RESOURCE>.caas[.<depth-int>].json

名前
excludeProperties
excludePropertyPrefixes jcr:,sling:,cq:,oak:,pge-
includeProperties jcr:text,text
jcr:title,title
jcr:description,description
jcr:lastModified,lastModified
cq:tags,tags
cq:lastModified,lastModified
includeComponents
excludeComponents
includeChildren
excludeChildren
Sling JSONの上書き foundation/components/image
wcm/foundation/components/image
mobileapps/caas/components/data/contentReference
mobileapps/caas/components/data/assetlist

ページ書き出し設定

この設定は、デフォルトを拡張して、子要素ノードの下にグループ化された子要素を含めます。

<SITE_PAGE>.caas.page[.<depth-int>].json

その他のリソース

コンテンツサービスの追加トピックについて詳しくは、次のリソースを参照してください。

このページ