コンテンツ参照は、別のAPIで管理しているコンテンツを紐付けることができるフィールドです。
記事に対して「著者(別API)」を紐付けたり、商品に対して「カテゴリ(別API)」を紐付けたりするなど、情報の共通化やリレーションを持たせる際に利用します。

特定のコンテンツが他のコンテンツから参照されている場合、コンテンツ詳細画面の右上に[被参照n件]というボタンが表示されるので、現在の被参照数を確認することができます。
このボタンをクリックすると、そのコンテンツを引用している参照元のコンテンツ一覧がモーダルウィンドウで表示されます。
設定項目 | 説明 |
|---|---|
必須項目 | 設定をONにすると入稿時の入力が必須となります。 |
説明文 | 入稿画面に表示する説明文です。 |
参照先コンテンツ | 参照するAPIを選択します。新規作成時のみ選択が可能です。 |
一覧画面に表示する項目 | コンテンツ一覧画面に表示する項目をコンテンツID、またはテキストフィールドの項目から選択できます。指定した項目が存在しない場合は、コンテンツIDが代わりに表示されます。 |
詳細は以下のドキュメントをご参照ください。
コンテンツ参照フィールドはオブジェクト形式でデータが返されるため、参照先のプロパティ(フィールドID)を指定して情報を表示します。
以下はNext.jsで、記事詳細に紐付けられた著者(writer)の情報を表示する実装例です。
export default async function Page({ params }) {
const { slug } = await params;
// microCMS JavaScript SDK(https://github.com/microcmsio/microcms-js-sdk)を使用してデータを取得
const data = await client.getListDetail({
endpoint: "blog",
contentId: slug,
});
return (
<main>
<h1>{data.title}</h1>
{/* writer はフィールドIDです。実際のフィールドIDに置き換えてください */}
<div>
<Image
src={data.writer.profileImage.url}
alt={data.writer.profileImage.alt || ""}
width={100}
height={100}
/>
<h2>{data.writer.name}</h2>
<p>{data.writer.description}</p>
</div>
<div>{data.content}</div>
</main>
);
}