コンテンツフラグメントの操作 working-with-content-fragments
Adobe Experience Manager(AEM)as a Cloud Service のコンテンツフラグメントを使用すると、ページに依存しないコンテンツの設計、作成、キュレーション、公開が可能になります。ヘッドレ配信に最適とされる複数の場所、複数のチャネル上で使用可能なコンテンツを用意できるようになります。また、マルチサイト管理と併用してコンテンツを再利用することもできます。
コンテンツフラグメントには、構造化されたコンテンツが含まれます。
-
作成されるフラグメントの構造を事前定義するコンテンツフラグメントモデルに基づいています。
-
構造の範囲は次のとおりです。
-
基本
- 例えば、1 つの複数行テキストフィールドなどです。
- ページオーサリングで使用する単純なコンテンツを用意するのに使用できます。
-
複合
- テキスト、数値、ブーリアン、日時などの様々なデータタイプのフィールドを多数組み合わせたもの。
- ページオーサリング用のより構造化されたコンテンツを用意するためまたはアプリケーションに配信するために使用できます。
-
入れ子
- 使用可能な参照データ型を使用して、コンテンツをネストできます。
- アプリケーションへの配信に使用される傾向があります。
-
コンテンツフラグメントは、AEM コアコンポーネントの Sling Model(JSON)書き出し機能を使用して、JSON 形式で配信することもできます。この形式の配信では次のことが可能です。
- コンポーネントを使用して、配信するフラグメントの要素を管理できます。
- API 配信に使用されるページで複数のコンテンツフラグメントコアコンポーネントを追加して、一括配信できます。
このページおよび次のページでは、コンテンツフラグメントを作成、設定、維持管理および使用するためのタスクについて説明します。
- インスタンスに対するコンテンツフラグメント機能を有効にする
- コンテンツフラグメントモデル - モデルを有効化、作成および定義します。
- コンテンツフラグメントの管理 - コンテンツフラグメントを作成し、編集、公開、参照します。
- バリエーション - フラグメントコンテンツのオーサリング - フラグメントコンテンツをオーサリングし、マスターのバリエーションを作成します。
- Markdown - フラグメントに Markdown 構文を使用します。
- 関連コンテンツの使用 - 関連コンテンツを追加します。
- メタデータ - フラグメントのプロパティ - フラグメントのプロパティを表示および編集します。
- コンテンツフラグメントと GraphQL を併用すると、アプリケーション用コンテンツを配信できます。その一助として、JSON 出力をプレビューできます。
- MSM を使用したコンテンツフラグメントの再利用
通信チャネルの数は年々増加しています。通常、チャネルとは配信メカニズムのことであり、次のどちらも指します。
- 物理チャネル:例えば、デスクトップ、モバイルなど。
- 物理チャネルでの配信形式:デスクトップ用の「製品詳細ページ」や「製品カテゴリーページ」、モバイル用の「モバイル web」や「モバイルアプリ」など。
しかし、すべてのチャネルでまったく同じコンテンツを使用することはお勧めしません。特定のチャネルに合わせてコンテンツを最適化する必要があります。
コンテンツフラグメントを使用すると、次のことが可能になります。
- 複数のチャネルでターゲットオーディエンスに効率よくリーチする方法を検討する。
- チャネルに依存しないエディトリアルコンテンツを作成、管理する。
- 多様なチャネル向けのコンテンツプールを構築する。
- 特定のチャネル向けにコンテンツのバリエーションをデザインする。
- アセットを挿入することでテキストに画像を追加する(混在メディアフラグメント)。
- ネストされたコンテンツを作成して、データの複雑さを反映する。
さらにこうしたコンテンツフラグメントを集めて組み立てることで、多様なチャネルにエクスペリエンスを提供できます。
- コンテンツフラグメント は、定義と構造を備えたエディトリアルコンテンツですが、視覚的なデザインやレイアウトは追加されていません。テキスト、数値、日付などの構造化データにアクセスするために使用できます。
- エクスペリエンスフラグメント は完全にレイアウトされたコンテンツであり、web ページのフラグメントです。
コンテンツフラグメントとコンテンツサービス content-fragments-and-content-services
AEM コンテンツサービスは、web ページだけに焦点を置かずに AEM のコンテンツの記述と配信を一般化するように設計されています。
AEM コンテンツサービスにより、あらゆるクライアントで使用できる標準化された方法で、従来の AEM web ページとは異なるチャネルにコンテンツを配信できます。そうしたチャネルの例を次に示します。
- 単一ページアプリケーション
- ネイティブモバイルアプリケーション
- AEM の外部の他のチャネルおよびタッチポイント
配信は、JSON エクスポーターを使用して JSON 形式で行われます。
AEM コンテンツフラグメントを使用して構造化コンテンツを記述し、管理できます。構造化コンテンツは、様々なコンテンツタイプを含むことができるモデルで定義されます。テキスト、数値データ、ブーリアン、日付と時刻などが含まれます。
AEM コアコンポーネントの JSON 書き出し機能と共にこの構造化コンテンツを使用して、AEM コンテンツを AEM ページ以外のチャネルに配信できます。
コンテンツタイプ content-type
コンテンツフラグメントとは、次のようなものです。
-
Assets として格納されます。
- コンテンツフラグメント(とバリエーション)は、Assets コンソールで作成および管理できます。
- コンテンツフラグメントエディターでオーサリングおよび編集されます。
-
コンテンツフラグメントコンポーネント(参照コンポーネント)を介してページエディター内で使用されます。
- コンテンツフラグメント コンポーネントを使用できるのはページの作成者です。作成者は、コンテンツフラグメントコンポーネントを使用して、必要なコンテンツフラグメントを HTML または JSON 形式で参照し、配信できます。
-
AEM GraphQL API を使用してアクセスできます。
コンテンツフラグメントは、次のようなコンテンツ構造です。
- レイアウトやデザインはありません(リッチテキストモードでは多少のテキストフォーマット設定が可能です)。
- 1 つ以上の構成要素を含みます。
- 画像を含めたり、関連付けたりすることができます。
- ページで参照される際に、中間コンテンツに使用されます。
- 配信メカニズム(ページやチャネル)に依存しません。
ビジュアルアセットを含むフラグメント fragments-with-visual-assets
作成者がより柔軟にコンテンツをコントロールできるように、画像をコンテンツフラグメントに追加したり、コンテンツフラグメントと統合したりできます。
アセットとコンテンツフラグメントの組み合わせには、様々な使用法があります。どの方法にもそれぞれの利点があります。
-
フラグメントに アセットを挿入(混在メディアフラグメント)
- フラグメントの構成要素です(コンテンツフラグメントの構成要素を参照してください)。
- アセットの位置を定義します。
- 詳しくは、フラグメントエディターでのフラグメントへのアセットの挿入を参照してください。
note note NOTE コンテンツフラグメント自体に挿入したビジュアルアセットは、前の段落に添付されます。このコンテンツフラグメントをページに追加した場合、ビジュアルアセットは、中間コンテンツが追加されたタイミングで前の段落との関連で移動します。 -
関連コンテンツ
- フラグメントに接続されますが、フラグメントの固定構成要素ではありません(コンテンツフラグメントの構成要素を参照してください)。
- 位置決めにある程度の柔軟性があります。
- ページでフラグメントを使用する際に、中間コンテンツのように手軽に利用できます。
詳細については、関連コンテンツを参照してください。
-
ページエディターの Assets ブラウザー で利用できるアセット
- アセットの選択には、完全な柔軟性があります。
- 位置決めにある程度の柔軟性があります。
- 特定のフラグメント向けに承認されるという概念は提供しません。
詳細については、Assets ブラウザーを参照してください。
コンテンツフラグメントの構成要素 constituent-parts-of-a-content-fragment
コンテンツフラグメントアセットは、(直接的または間接的に)次の構成要素からなります。
-
フラグメントの要素
- 要素は、コンテンツを含むデータフィールドと相関関係にあります。
- コンテンツモデルを使用して、コンテンツフラグメントを作成します。モデルで指定された要素(フィールド)は、フラグメントの構造を定義します。このような要素(フィールド)には様々なデータタイプがあります。
-
フラグメントの段落
-
フラグメントに挿入したアセット(混在メディアフラグメント)
-
アセット(画像)が実際のフラグメントに挿入され、フラグメントの内部コンテンツとして使用されます。
-
フラグメントの段落システムに埋め込まれます。
-
フラグメントをページ上で使用または参照するときに書式設定できます。
-
フラグメントへの追加、フラグメントからの削除、フラグメント内での移動は、フラグメントエディターのみで行えます。これらのアクションは、ページエディターでは行えません。
-
フラグメントへの追加、フラグメントからの削除、フラグメント内での移動は、フラグメントエディターのリッチテキスト形式を使用してのみ行うことができます。
-
複数行テキスト要素(任意のフラグメントタイプ)にのみ追加できます。
-
前のテキスト(段落)に添付されます。
note caution CAUTION プレーンテキスト形式に切り替えると、アセットが(誤って)フラグメントから削除されるおそれがあります。 note note NOTE ページでフラグメントを使用する場合は、アセットを追加の(中間)コンテンツとして追加することもできます。その場合は、関連コンテンツ、またはアセットブラウザー内のアセットを使用します。
-
-
関連コンテンツ
-
これはフラグメント外部のコンテンツですが、編集に関連します。通常は、画像、ビデオ、または他のフラグメントです。
-
コレクション内の個々のアセットは、ページエディターでページにフラグメントを追加するときに、フラグメントと共に使用できます。つまり、コレクション内の個々のアセットは任意であり、特定のチャネルの要件に応じて使用します。
-
アセットは、コレクションを介してフラグメントに関連付けられます。関連付けられたコレクションを使用することで、作成者はページ作成時に使用するアセットを決定できます。
- コレクションはフラグメントにデフォルトコンテンツとして関連付けることができます。または、フラグメントの作成時に作成者が関連付けることができます。
- アセット(DAM)コレクションは、フラグメントの関連コンテンツの基礎です。
-
オプションで、トラッキングしやすいように、コレクションにフラグメント自体を追加することもできます。
-
-
フラグメントのメタデータ
-
アセットメタデータスキーマを使用します。
-
タグは、次のことを行うときに作成できます。
-
フラグメントを作成してオーサリングするとき。
-
または、その後、次の方法でも作成できます。
- コンソールでフラグメントの プロパティ を表示または編集することによって。
- フラグメントエディターで メタデータ を編集することによって。
-
note caution CAUTION メタデータ処理プロファイルは、コンテンツフラグメントには適用されません。 -
-
マスター
-
フラグメントの一部
- どのコンテンツフラグメントにもマスターインスタンスが 1 つあります。
- マスターは削除できません。
-
マスターには、フラグメントエディターの「バリエーション」の下でアクセスできます。
-
マスター自体はバリエーションではありませんが、すべてのバリエーションの基礎となります。
-
-
バリエーション
- 編集目的に特化したフラグメントテキストのレンディション。チャネルに関連付けることができますが、必須ではありません。アドホックなローカル変更の場合にも使用できます。
- マスター のコピーとして作成しますが、必要に応じて編集できます。バリエーション自体の間にはコンテンツの重複があります。
- フラグメントのオーサリング中に定義できます。
- コンテンツコピーの分散を避けるために、フラグメントに格納されます。
- マスター側のコンテンツが更新されている場合は、バリエーションをマスターと同期できます。
- 要約することで、あらかじめ定義した長さにテキストをすばやく切り詰めることができます。
- フラグメントエディターの「バリエーション」タブにあります。
コンテンツフラグメントを使用したページのオーサリング時の中間コンテンツ in-between-content-when-page-authoring-with-content-fragments
中間コンテンツの特徴は次のとおりです。
- コンテンツフラグメントを操作するときにページエディターで使用できます。
- ページ上で使用または参照された後、フラグメントのフロー内に追加されるコンテンツ。
- コンテンツフラグメントを操作するときにページエディターで使用できます。
- 中間コンテンツは、1 つの要素のみが表示される任意のフラグメントに追加できます。
- 該当するブラウザーで使用できるアセットやコンポーネントと同様に、関連コンテンツを使用できます。
フラグメントを利用するための要件 required-by-fragments
コンテンツフラグメントを作成するには、以下が必要です。
-
コンテンツモデル
- 🔗設定ブラウザーを使用して有効化されます。
- ツールを使用して作成されます。
- フラグメントを作成するために必要です。
- フラグメントの構造(タイトル、コンテンツ要素、タグ定義)を定義します。
- コンテンツモデル定義にはタイトルと 1 つのデータ要素が必要です。その他すべてはオプションです。
- モデルでは、デフォルトコンテンツを定義できます(該当する場合)。
- 作成者は、フラグメントコンテンツのオーサリング時に、定義された構造を変更することはできません。
- 依存コンテンツフラグメントの作成後にモデルに対して行った変更は、これらのコンテンツフラグメントに影響を与える可能性があります。
コンテンツフラグメントをページオーサリングに使用するには、次のものも必要です。
-
コンテンツフラグメントコンポーネント
- フラグメントを HTML 形式、JSON 形式、またはその両方で配信するのに役立ちます。
- ページ上でフラグメントを参照するために必要です。
- フラグメントのレイアウトと配信(チャネル)を行います。
- フラグメントは、レイアウトを定義し、一部またはすべての要素/バリエーションと関連するコンテンツを配信するために、1 つ以上の専用コンポーネントを必要とします。
- 作成時にフラグメントをページにドラッグすると、必須コンポーネントが自動的に関連付けられます。
MSM でのコンテンツフラグメントの再利用 reusing-content-fragments-with-msm
Assets コンソールからアクセスする場合、MSM を使用してフラグメントのライブコピーを作成できます。
詳しくは、次を参照してください。
これらにより、フラグメントのバリエーションおよび個々のフィールドの両方に対する継承が有効になります。
使用例 example-usage
フラグメントと、その要素およびバリエーションを一緒に使用すると、複数のチャネルに対応した一貫性のあるコンテンツを作成できます。フラグメントをデザインする際は、何をどこで使用するかを考慮します。
WKND のサンプル wknd-sample
AEM as a Cloud Service の習得に役立つ WKND サイトサンプルが用意されています。
WKND プロジェクトには、次のものが含まれます。
-
次の URL で入手できるコンテンツフラグメントモデル:
http://<hostname>:<port>/libs/dam/cfm/models/console/content/models.html/conf/wknd
-
次の URL で入手できるコンテンツフラグメント(およびその他のコンテンツ):
http://<hostname>:<port>/assets.html/content/dam/wknd/en