next.js 14は多言語のウェブサイトの開発を簡素化します。この記事では、多言語Next.js 14アプリケーションを構築し、プロジェクトのセットアップから動的な言語スイッチャーまでの重要な側面をカバーしています。
主要な機能:
プロジェクトのセットアップ:
新しいnext.jsプロジェクト(例:
)を作成し、プラグインを使用してを構成します。
npx create-next-app my-i18n-app
next@latest
next-intl
next.config.js
ロケール固有のコンテンツ:next-intl
各ロケールの翻訳を含むJSONファイル(例:
フォルダーを作成します。 これは、next.jsの自動翻訳の現在の欠如を補償します
content
en.json
ダイナミックメッセージの読み込み:es.json
ファイルを作成して、検出されたロケールに基づいてメッセージJSONファイルを動的にインポートし、コンテンツがユーザー言語の好みに適応するようにします。 エラー処理(サポートされていないロケールの場合はde.json
など)が重要です。
言語ルーティングとミドルウェア:ファイルを使用してi18n.ts
ファイルを実装して、サポートされているロケール、デフォルトのロケール、およびルーティングルールを定義して、ユーザーを適切な言語バージョンにサイトのバージョンに送信します。 notFound
構成により、国際化されたパスのみが処理されることが保証されます。
レイアウトとページコンポーネント:レイアウトとページのコンポーネント(例:、middleware.ts
)を変更して、翻訳されたコンテンツにアクセスするためにnext-intl/middleware
のフックを使用します。 コンポーネントを構成して、さまざまな言語バージョンを効果的に処理します。matcher
言語スイッチャーコンポーネント:next.jsのルーターとLangSwitcher.tsx
を使用して、言語の選択とルーティングを管理するusePathname
コンポーネントを構築します。このコンポーネントは、言語間を切り替えるためのユーザーフレンドリーなインターフェイスを提供します。このコンポーネントをレイアウトに統合します(例:app/layout.tsx
)。
各ステップの完全なコードの例は、元の記事で入手できます。 この改訂された応答は、より簡潔で整理された概要を提供し、重要な情報と画像の配置を維持します。
以上がnext.js 14の国際化の強化(i18n)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。