GraphQL のコンテンツフラグメントを使用したヘッドレスコンテンツ配信

Adobe Experience Manager(AEM)では、コンテンツフラグメントをAEM GraphQL API(標準のGraphQLに基づくカスタマイズされた実装)と共に使用して、アプリケーションで使用するための構造化コンテンツをヘッドレスに配信できます。 単一の API クエリをカスタマイズする機能により、レンダリングする特定のコンテンツを(単一の API クエリに対する応答として)取得して配信できます。

ヘッドレス CMS

ヘッドレスコンテンツ管理システム(CMS)とは次のことを意味します。

  • ヘッドレスコンテンツ管理システム(ヘッドレス CMS)は、バックエンド専用のコンテンツ管理システム(CMS)であり、API 経由でコンテンツにアクセスして、任意のデバイスに表示できます。

    ウィキペディアを参照してください。

AEM のコンテンツフラグメントのオーサリングとは、次のことを意味します。

  • コンテンツフラグメントを使用すると、主にフォーマットされたページに直接公開することを目的としていない(1:1)コンテンツを作成できます。

  • コンテンツフラグメントのコンテンツは、コンテンツフラグメントモデルに従って、あらかじめ決められた方法で構造化されます。これにより、アプリケーションへのアクセスが簡素化され、コンテンツの処理が促進されます。

GraphQL - 概要

GraphQL とは次のことを意味します。

  • …API のクエリ言語と、既存のデータを使用してこれらのクエリを満たすランタイムです。

    GraphQL.org を参照

AEM GraphQL API を使用すると、コンテンツフラグメントで(複雑な)クエリを実行できます。各クエリは、特定のモデルタイプに従っています。返されたコンテンツは、アプリケーションで使用できます。

AEM GraphQL API

Adobe Experienceのために、標準のGraphQL APIのカスタマイズされた実装が開発されました。 詳しくは、「コンテンツフラグメントと共に使用する AEM GraphQL API」を参照してください。

AEM GraphQL API の実装は、GraphQL Java ライブラリに基づいています。

AEM GraphQL API で使用するコンテンツフラグメント

コンテンツフラグメントは、AEM クエリの GraphQL の基盤として次のように使用できます。

  • ページに依存しないコンテンツをデザイン、作成、キュレーションおよび公開できます。
  • コンテンツフラグメントモデルは、定義されたデータタイプを使用して、必要な構造を提供します。
  • モデルの定義時に使用できるフラグメント参照を使用して、構造の追加のレイヤーを定義できます。

GraphQL と共に使用するコンテンツフラグメント

コンテンツフラグメント

コンテンツフラグメント:

コンテンツフラグメントモデル

コンテンツフラグメントモデルは、

  • 有効​にされると、スキーマの生成に使用されます。

  • GraphQL に必要なデータタイプとフィールドを提供します。アプリケーションが、可能なことだけを要求して期待するものを受け取るようにします。

  • データタイプ​フラグメント参照​は、別のコンテンツフラグメントを参照するためにモデル内で使用できるので、構造レベルを追加します。

フラグメント参照

フラグメント参照​は、

  • GraphQL との関連で特に興味深いものです。

  • コンテンツフラグメントモデルの定義時に使用できる特定のデータタイプです。

  • 特定のコンテンツフラグメントモデルに依存する別のフラグメントを参照します。

  • 構造化データを取得できます。

    • マルチフィード​として定義した場合、複数のサブフラグメントをプライムフラグメントで参照(取得)できます。

JSON プレビュー

コンテンツフラグメントモデルの設計と開発に役立つように、JSON 出力をプレビューできます。

AEM での GraphQL の使用方法 - サンプルコンテンツとサンプルクエリ

AEM GraphQL API の使い方の紹介は、「AEM での GraphQL の使用方法 - コンテンツとクエリの例」を参照してください。

チュートリアル - AEM ヘッドレスと GraphQL をはじめる前に

実践的なチュートリアルを探している場合は、AEM の GraphQL API を使用し、外部アプリで使用するコンテンツをヘッドレス CMS シナリオで構築して公開する方法を示す「AEM ヘッドレスと GraphQL をはじめる前に」のエンドツーエンドのチュートリアルをご覧ください。

このページ