μμ ν¬μ€νΈμμ next-intlμ μ€μΉνκ³ μ¬μ©νλ λ°©λ²μ μμ보μμ΅λλ€.
μ΄λ²μλ λ©νλ°μ΄ν°μ μ μ©νλ λ°©λ²μ μκ°ν΄ λ³΄κ² μ΅λλ€.
μ°Έκ³ ν λ§ν 곡μλ¬Έμ π
1. next-intl
2. Next.js λ©νλ°μ΄ν°
3. Next.js generateMetadata()
λ¨Όμ , κ° json νμΌμ λ©νλ°μ΄ν° λ΄μ©μ μμ±ν©λλ€.
"Metadata": {
"title": "...",
"description": "...",
...
},
κ·Έλ¦¬κ³ layout.tsxμ μλ μ½λλ₯Ό μμ±ν΄ μ€λλ€.
Tip π‘
generateMetadata()ν¨μλMetadata objectμ ν¨κ» μ¬μ©ν μ μμ΅λλ€.
νμΌμexport const metadata: Metadata = {...};μ΄ μλ€λ©΄ μ§μμ£ΌμΈμ.
// app/[locale]/layout.tsx
import {getTranslations} from 'next-intl/server';
interface Params {
params: { locale: string };
}
export async function generateMetadata({ params: { locale } }: Params) {
const t = await getTranslations({ locale, namespace: 'Metadata' });
return {
title: t('title'),
description: t('description'),
};
}
μλμ κ°μ΄ titleκ³Ό descriptionμ΄ λ°λλ κ²μ νμΈν μ μμ΅λλ€.

