コンテンツフラグメントの操作の概要 overview-working-with-content-fragments
Adobe Experience Manager(AEM)as a Cloud Service のコンテンツフラグメントを使用すると、ページに依存しないコンテンツを設計、作成、キュレーション、公開できます。複数の場所、複数のチャネル上で使用可能なコンテンツを用意でき、ヘッドレス配信やページオーサリングに理想的です。
- コンテンツフラグメントの管理のための Assets コンソールの使用
- 元の コンテンツフラグメントエディターの使用
- ページオーサリング用のコンテンツフラグメントの使用
コンテンツフラグメントには、構造化されたコンテンツが含まれます。
-
各フラグメントは、コンテンツフラグメントモデルに基づいています。
- コンテンツフラグメントモデルは、生成されるフラグメントの構造を定義します。
-
すべてのフラグメントは、次の要素で構成されます。
-
構造の範囲は次のとおりです。
-
基本
- 例えば、1 つの複数行テキストフィールドです。
- ページオーサリングで使用する単純なコンテンツを用意するのに使用できます。
- また、アプリケーションへのヘッドレス配信にも使用できます。
-
複合
- テキスト、数値、ブーリアン、日時などの様々なデータ型のフィールドを多数組み合わせたもの。
- ページオーサリング用のより構造化されたコンテンツを用意するためや、アプリケーションにヘッドレス配信するために使用できます。
-
入れ子
- 使用可能な参照データ型を使用して、コンテンツをネストできます。
- アプリケーションへのヘッドレス配信に使用される傾向があります。
-
コンテンツフラグメントは、AEM コアコンポーネントの Sling モデル(JSON)書き出し機能を使用して、JSON 形式で配信することもできます。この形式の配信では次のことが可能です。
- コンポーネントを使用して、配信するフラグメントの要素を管理できます。
- API 配信に使用されるページで複数のコンテンツフラグメントコアコンポーネントを追加して、一括配信できます。
通信チャネルの数は年々増加しています。通常、チャネルとは配信メカニズムのことであり、次のどちらも指します。
- 物理チャネル:例えば、デスクトップ、モバイルなど。
- 物理チャネルでの配信形式:デスクトップ用の「製品詳細ページ」や「製品カテゴリーページ」、モバイル用の「モバイル web」や「モバイルアプリ」など。
ただし、すべてのチャネルでの まったく 同じコンテンツの使用はお勧めしません。特定のチャネルに合わせてコンテンツを最適化する必要があります。
コンテンツフラグメントを使用すると、次のことが可能になります。
- 複数のチャネルでターゲットオーディエンスに効率よくリーチする方法を検討する。
- チャネルに依存しないエディトリアルコンテンツを作成、管理する。
- 多様なチャネル向けのコンテンツプールを構築する。
- 特定のチャネル向けにコンテンツのバリエーションをデザインする。
- アセットを挿入することでテキストに画像を追加します。
- データの複雑さを反映して、ネストされたコンテンツを作成します。
さらにこうしたコンテンツフラグメントを集めて組み立てることで、多様なチャネルにエクスペリエンスを提供できます。
- コンテンツフラグメント は、定義と構造を備えたエディトリアルコンテンツですが、視覚的なデザインやレイアウトは追加されていません。テキスト、数値、日付などの構造化データにアクセスするために使用できます。
- エクスペリエンスフラグメント は完全にレイアウトされたコンテンツであり、web ページのフラグメントです。
このページおよび以下のページでは、コンテンツフラグメントを作成、設定、維持管理および使用するためのタスクについて説明しています。
- インスタンスに対するコンテンツフラグメント機能を有効にする
- コンテンツフラグメントモデル - モデルを有効化、作成および定義します。
- コンテンツフラグメントを作成(コンテンツフラグメントコンソールを使用)
フラグメントが作成されたら、次の操作を実行できます。
- コンテンツフラグメントコンソールを使用 - フラグメントにアクセスし、それを公開(プレビューまたは実稼動へ)、参照する
- コンテンツフラグメントエディターを使用 - フラグメントを編集、公開(プレビューまたは実稼動へ)し、参照する
- 分析 エディターを使用したコンテンツフラグメントの構造
- GraphQL を使用してフラグメントにアクセスし、アプリケーションへのヘッドレス配信を実現します。
- または、フラグメントをページオーサリングに使用します。
メインとバリエーション main-and-variations
バリエーションは、AEM のコンテンツフラグメントの重要な機能です。これにより、特定のチャネルやシナリオで使用する メイン コンテンツのコピーを作成および編集でき、ヘッドレスコンテンツ配信やページオーサリングをより柔軟に行うことができます。
-
メイン
-
メイン はバリエーションそのものではありませんが、すべてのバリエーションの基礎となります。
-
フラグメントの不可欠な構成要素
- どのコンテンツフラグメントにも メイン のインスタンスが 1 つあります。
- メイン は削除できません。
-
メイン には、フラグメントエディターの「バリエーション」の下でアクセスできます。
note note NOTE Assets コンソールから利用できるエディターでは、メイン は マスター としてラベル付けされています。 -
-
バリエーション
- 編集目的に合わせたフラグメントテキストのレンディション。チャネルに関連付けることができますが必須ではありません。ローカルで臨時に変更する場合にも使用できます。
- メイン のコピーとして作成しますが、その後、必要に応じて編集できます。多くの場合、バリエーション同士にはコンテンツの重複があります。
- フラグメントのオーサリング中に、左のパネルから定義できます。
- コンテンツコピーの分散を避けるために、フラグメントに格納されます。
- バリエーションは、メイン と比較および同期できます。
コンテンツフラグメントとコンテンツサービス content-fragments-and-content-services
AEM コンテンツサービスは、web ページだけに焦点を置かずに AEM のコンテンツの記述と配信を一般化するように設計されています。
AEM コンテンツサービスにより、あらゆるクライアントで使用できる標準化された方法で、従来の AEM web ページとは異なるチャネルにコンテンツを配信できます。そうしたチャネルの例を次に示します。
- 単一ページアプリケーション
- ネイティブモバイルアプリケーション
- AEM の外部の他のチャネルおよびタッチポイント
配信は、JSON エクスポーターを使用して JSON 形式で行われます。
AEM コンテンツフラグメントを使用して構造化コンテンツを記述し、管理できます。構造化コンテンツは、テキスト、数値データ、ブール値、日付と時刻など、様々なコンテンツタイプを含めることができるモデルを使用して定義します。
AEM コアコンポーネントの JSON 書き出し機能と共にこの構造化コンテンツを使用して、AEM コンテンツを AEM ページ以外のチャネルに配信できます。
コンテンツタイプ content-type
コンテンツフラグメントとは、次のようなものです。
-
Sites 機能。
-
Assets として格納されます。
- コンテンツフラグメント(とバリエーション)は、コンテンツフラグメントコンソールで作成および管理できます。
- コンテンツフラグメントエディターでオーサリングおよび編集されます。
-
AEM GraphQL API を使用したコンテンツ配信用にアクセスできます。
-
コンテンツフラグメントコンポーネント(参照コンポーネント)を使用することで、ページエディター内で使用できます。
- コンテンツフラグメントのコアコンポーネントは、ページの作成者が使用できます。作成者は、必要なコンテンツフラグメントを HTML または JSON 形式で参照し、配信できます。
コンテンツフラグメントは、次のようなコンテンツ構造です。
- レイアウトやデザインを伴いません(テキストフィールドに対してテキストの書式設定が可能です)。
- 配信メカニズム(ページやチャネルなど)に依存しません。
- 1 つ以上の構成要素を含みます。
- 画像を含めたり、関連付けたりすることができます。
ビジュアルアセットを含むフラグメント fragments-with-visual-assets
作成者がより柔軟にコンテンツをコントロールできるように、画像をコンテンツフラグメントに追加したり、コンテンツフラグメントと統合したりできます。
アセットは、様々な方法でコンテンツフラグメントと使用できます。どの方法にもそれぞれの利点があります
- コンテンツ参照 として
- 複数行テキスト フィールド内に
コンテンツフラグメントの構成要素 constituent-parts-of-a-content-fragment
コンテンツフラグメントのアセットは、(直接的または間接的に)次の構成要素から構成されます。
-
フラグメントの要素
- 要素は、コンテンツを含むデータフィールドと相関関係にあります。
- コンテンツフラグメントモデルを使用して、コンテンツフラグメントを作成します。モデルで指定された要素(フィールド)は、フラグメントの構造を定義します。このような要素(フィールド)には様々なデータタイプがあります。
-
フラグメントの段落
-
個々のエンティティとして区切られたテキストのブロック(多くの場合は複数行)。
-
ページ作成中にコンテンツを制御できます。
-
-
フラグメントのメタデータ
-
アセットメタデータスキーマを使用します。
-
タグは、次のことを行うときに作成できます。
- フラグメントを作成してオーサリングするとき。
- または後で、フラグメントエディターでプロパティを表示または編集する場合。
note caution CAUTION メタデータ処理プロファイルは、コンテンツフラグメントには適用されません。 note caution CAUTION コンテンツフラグメントモデルでは、多くの場合、タイトル および 説明 の名前が付けられたデータフィールドを定義できます。これらの 2 つのフィールドが存在する場合、それらはユーザー定義のフィールドであり、エディターのコンテンツ領域で更新できます。 コンテンツフラグメントとそのバリエーションには、タイトル および 説明 と呼ばれるメタデータ(プロパティ)フィールドもあります。これらの 2 つのメタデータフィールドは、コンテンツフラグメントとバリエーションの不可欠な部分で、フラグメントの作成時に最初に定義されます。これらは、エディターのプロパティ/メタデータ領域で更新できます。 -
フラグメントを利用するための要件 required-by-fragments
コンテンツフラグメントを作成するには、次が必要です。
-
コンテンツモデル
- 🔗設定ブラウザーを使用して有効化されます。
- ツールを使用して作成されます。
- フラグメントを作成するために必要です。
- フラグメントの構造(タイトル、コンテンツ要素、タグ定義)を定義します。
- コンテンツフラグメントモデル定義にはタイトルと 1 つのデータ要素が必要です。その他すべてはオプションです。
- モデルでは、デフォルトコンテンツを定義できます(該当する場合)。
- オーサーは、フラグメントコンテンツのオーサリング時に定義された構造を変更できません。ただし、フラグメントエディターからモデルエディターを開くことはできます。
- 依存コンテンツフラグメントの作成後にモデルに対して行った変更は、これらのコンテンツフラグメントに影響を与える可能性があります。
コンテンツフラグメントをヘッドレスコンテンツ配信に使用するには、次のものも必要です。
-
必要なコンテンツをリクエストするための GraphQL クエリ
-
このコンテンツは、AEM 向けの独自の SPA を開発する際に使用できます。詳しくは、次のドキュメントを参照してください。
コンテンツフラグメントをページオーサリングに使用するには、次のものも必要です。
-
コンテンツフラグメントコンポーネント
- フラグメントを HTML 形式や JSON 形式で配信するのに役立ちます。
- ページ上でフラグメントを参照するために必要です。
- フラグメントのレイアウトと配信(チャネルなど)に対応します。
- フラグメントは、レイアウトを定義し、一部またはすべての要素/バリエーションと関連するコンテンツを配信するために、1 つ以上の専用コンポーネントを必要とします。
- 作成時にフラグメントをページにドラッグすると、必須コンポーネントが自動的に関連付けられます。
- コンテンツフラグメントのコアコンポーネントを参照してください。
使用例 example-usage
フラグメントと、その要素およびバリエーションを一緒に使用すると、複数のチャネルに対応した一貫性のあるコンテンツを作成できます。フラグメントを設計するときは、何をどこで使用するかを考慮する必要があります。
WKND のサンプル wknd-sample
AEM as a Cloud Service について学ぶのに役立つ WKND サイトと WKND 共有サンプルが用意されています。
WKND プロジェクトには、次のものが含まれます。
-
次の URL で入手できるコンテンツフラグメントモデル:
-
.../libs/dam/cfm/models/console/content/models.html/conf/wknd
-
.../ui#/aem/libs/dam/cfm/models/console/content/models.html/conf/wknd-shared
-
-
次の URL で入手できるコンテンツフラグメント(およびその他のコンテンツ):
.../assets.html/content/dam/wknd/en