GraphQL のコンテンツフラグメントを使用したヘッドレスコンテンツ配信 headless-content-delivery-using-content-fragments-with-graphQL

コンテンツフラグメントと GraphQL API を使用すると、Adobe Experience Manager(AEM)as a Cloud Service をヘッドレスコンテンツ管理システム(CMS)として使用できます。

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

NOTE
関連トピック:
  • ヘッドレスの概念と用語の概要については、ヘッドレスとはを参照してください。

  • AEM Sites as a Cloud Service 向けヘッドレス開発の概要については、ヘッドレスと AEM を参照してください。

ヘッドレス CMS headless-cms

ヘッドレスコンテンツ管理システム(CMS)は、バックエンドのみのコンテンツ管理システムであり、API を介してコンテンツにアクセスできるようにするコンテンツリポジトリとして明示的に設計および構築され、任意のデバイス上で表示することができます。

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

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

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

GraphQL - 概要 graphql-overview

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

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

    GraphQL.org を参照

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

AEM GraphQL API aem-graphql-api

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

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

AEM GraphQL API で使用するコンテンツフラグメント content-fragments-use-with-aem-graphql-api

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

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

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

コンテンツフラグメント content-fragments

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

コンテンツフラグメントモデル content-fragments-models

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

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

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

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

フラグメント参照 fragment-references

フラグメント参照 ​は、

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

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

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

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

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

JSON プレビュー json-preview

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

AEM での GraphQL の使用方法 - サンプルコンテンツとサンプルクエリ learn-graphql-with-aem-sample-content-queries

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

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

実践的なチュートリアルを探している場合は、AEM ヘッドレスおよび GraphQL 入門をご覧ください。これは、AEM の GraphQL API を使用してコンテンツを構築および公開し、ヘッドレス CMS シナリオで外部アプリによって使用する方法を説明する包括的なチュートリアルです。

recommendation-more-help
fbcff2a9-b6fe-4574-b04a-21e75df764ab