Next.js 14 の App Router で Metadata を設定する方法を解説します。基本的なタイトルや説明の設定から、動的なメタデータ、OGP(Open Graph Protocol)の設定までを詳しく説明します。
Next.js 14 の App Router では、ページごとの メタデータ(Metadata) を metadata
オブジェクトとして簡単に設定できます。
本記事では、基本的なタイトルや説明の設定方法から、動的なメタデータ、OGP(Open Graph Protocol)などの詳細な設定 までを解説します。
App Router では、各ページの metadata
を export const metadata = {}
の形式で定義できます。
JSX// app/page.js export const metadata = { title: "ホームページ", description: "これは Next.js 14 App Router を使ったサンプルサイトです。", }; export default function HomePage() { return <h1>Welcome to Next.js 14</h1>; }
✅ ポイント
title
: ページのタイトルdescription
: メタディスクリプション(SEO や SNS シェア時に表示される)generateMetadata
を使用すると、ページのパラメータに基づいた 動的なメタデータ を設定できます。
JSX// app/products/[id]/page.js export async function generateMetadata({ params }) { const product = await fetch( `https://api.example.com/products/${params.id}` ).then((res) => res.json()); return { title: `${product.name} - 商品詳細`, description: `これは ${product.name} の詳細ページです。`, }; } export default function ProductPage({ params }) { return <h1>商品ページ: {params.id}</h1>; }
✅ ポイント
generateMetadata
は 非同期関数 を使えるので、API からデータを取得して設定可能。params.id
を使って 動的なタイトルや説明を生成 できる。SNS でのシェア時に適切な情報を表示するために、OGP のメタタグも設定できます。
JSX// app/page.js export const metadata = { title: "ホームページ", description: "Next.js 14 App Router の OGP 設定サンプル。", openGraph: { title: "ホームページ - Next.js 14", description: "Next.js 14 のメタデータ設定の解説。", url: "https://example.com", siteName: "Example Site", images: [ { url: "https://example.com/og-image.jpg", width: 1200, height: 630, }, ], locale: "ja_JP", type: "website", }, };
✅ ポイント
openGraph.title
: OGP 用のタイトルopenGraph.description
: OGP 用の説明文openGraph.url
: ページの URLopenGraph.images
: シェア時に表示する画像の URL・サイズopenGraph.locale
: 言語設定(日本語なら ja_JP
)openGraph.type
: website
, article
などの種類Next.js 14 の App Router では、metadata
を使って ページごとのメタデータを簡単に管理 できます。
✅ 学んだこと
metadata
を使って 静的なタイトルや説明を設定 できる。generateMetadata
を使えば API から動的なメタデータを取得可能。openGraph
を活用すると SNS シェア時の OGP 設定が可能。適切なメタデータを設定することで、SEO を強化し、SNS でのシェア時にも最適な表示を実現 できます。
回 | タイトル | リンク |
---|---|---|
第 1 回 | Page Router と App Router の違い | 詳 細 |
第 2 回 | App Router のルーティング | 詳 細 |
第 3 回 | App Router における Metadata の設定 | この記事 |
第 4 回 | OGP・Twitter 画像の自動設定 | 詳 細 |
第 5 回 | App Router における API ルートの基本 | 詳 細 |
第 6 回 | use server と use client の使い分け | 詳 細 |
第 7 回 | useContext の Provider の適用方法 | 詳 細 |
第 8 回 | next/link の基本と使い方 | 詳 細 |
第 9 回 | next/image の概要 | 詳 細 |
第 10 回 | next/navigation の使い方 | 詳 細 |
当サイトの情報は、一般的な参考情報として提供しております。
正確な情報の掲載に努めておりますが、その内容の正確性・完全性・最新性を保証するものではありません。
記事の内容をご利用の際は、ご自身の責任において判断し、必要に応じて専門家にご相談ください。
当サイトの情報の利用により生じたいかなる損害についても、一切の責任を負いかねますのでご了承ください。
※ 本ページでは、著作権法に基づき、適正な引用の範囲内でコンテンツを紹介しています。
オリジナルの情報は発信元をご確認ください。
もし問題がありましたら、こちら からお問い合わせください。