多言語対応 Headless CMS — better-i18n でローカライズされたコンテンツをスケーラブルに管理
多言語チームのために構築された Headless CMS です。コンテンツモデルを定義し、複数の言語にわたって翻訳を管理し、強力な REST API を通じてローカライズされたコンテンツを配信できます — カスタムインフラ不要です。
なぜ CMS にネイティブ i18n サポートが必要なのか
ほとんどの Headless CMS プラットフォームは、ローカライゼーションを後付けの機能として扱っています — プラグイン、アドオン、または設定に埋め込まれたフィールドレベルのトグルとして。その結果は? 断片化されたワークフロー、不整合な翻訳、そしてすべてをまとめるためにカスタムのグルーコードを書くエンジニアリングチームです。
better-i18n の Headless CMS は違います。多言語コンテンツ管理は機能フラグではなく、基盤そのものです。すべてのモデル、すべてのフィールド、すべての API レスポンスが、初日から複数の言語で動作するように設計されています。
Model Builder — コンテンツを思い通りに構造化
Model Builder を使用すると、コンテンツがどのように構造化されているかを正確に定義できます。繰り返されるコンテンツ(ブログ投稿、製品ページ、FAQ)には コレクション を作成し、単発のページ(ホームページ、アバウト、設定)には シングルトン を作成します。
各モデルはスキーマであり、チームと API コンシューマーが依存できるものです。どのフィールドが存在するか、どのフォーマットを期待するかを推測する必要はありません — モデルがコントラクトです。
19 以上のフィールドタイプ
better-i18n には、回避策なしにあらゆるコンテンツ構造をモデル化できる包括的なフィールドタイプセットが含まれています:
- Text & Rich Text — プレーンテキストフィールドと、フォーマット、埋め込み、構造化コンテンツを備えた完全な Plate.js リッチテキストエディター
- Textarea — 説明、要約、メモ用の複数行プレーンテキスト
- Number & Boolean — 数値と真偽値のトグル
- Date & DateTime — 任意の時刻精度を持つ日付ピッカー
- Files & Media — 画像、ドキュメント、その他のアセットのアップロードと添付
- URL, Email & Phone — 連絡先とリンクデータの検証済みフィールド
- Enum (Select / Multi-select) — 一貫したカテゴリ分けのための事前定義オプションリスト
- Relations & Rollups — モデル間でエントリをリンクし、関連データを集約
- Formulas — 他のフィールド値に基づく計算フィールド
- Unique ID — 各エントリの自動生成識別子
- Status — コンテンツライフサイクル管理のための組み込みワークフロー状態
- Created / Last Edited Timestamps — すべてのエントリの自動監査証跡
フィールド管理
各フィールドは細かく設定できます:
- いつでも任意のモデルに新しいフィールドを 追加
- フィールド名、タイプ、検証ルール、プレースホルダーテキストを 編集
- ドラッグアンドドロップでフィールドを 並び替え して編集ワークフローに合わせる
- 不要になったフィールドを安全に 削除 — 既存のエントリを壊さずに
エントリ管理 — 完全なコンテンツライフサイクル
コンテンツエントリの作成と管理は簡単です。エントリエディターはモデルのスキーマに適応し、各フィールドタイプに適切な入力を表示します。
CRUD + 一括操作
- すべてのカスタムフィールドを入力した状態でエントリを 作成
- 完全なフィールド展開とリレーション解決でエントリを 読み取り
- 各言語の翻訳を含むすべてのフィールドを 更新
- エントリを個別または一括で 削除
- 一括ステータス更新 — 一度の操作で数十のエントリをドラフトから公開済みに移動
- 一括削除 — 古いコンテンツを効率的にクリーンアップ
ステータスワークフロー
各エントリは明確なライフサイクルに従います:
- ドラフト — 進行中の作業、編集者のみが閲覧可能
- レビュー待ち — 編集レビューの準備完了
- 公開済み — ライブで API を通じて利用可能
- アーカイブ済み — 参照用に保持されるが、アクティブなクエリからは除外
このワークフローにより、チームのスピードを落とすことなくコンテンツの品質が確保されます。
AI コンテンツ生成
空のフィールドを見つめていませんか? better-i18n の AI コンテンツ生成が役立ちます。content.generateFieldContent 機能はモデル構造と既存のコンテンツを分析して、SEO メタディスクリプションから商品コピーまでのフィールド値を提案します。
AI 生成はフィールドレベルで機能するため、コントロールを維持できます。コンテンツが自分のボイスに合うまで、承認、編集、または再生成を行いましょう。
パブリック REST API — どこでもコンテンツを配信
Headless CMS アーキテクチャにより、コンテンツが必要な場所 — ウェブサイト、モバイルアプリ、デジタルサイネージ、IoT デバイス、またはあらゆるフロントエンドフレームワーク — で利用可能です。
API エンドポイント
| エンドポイント | 説明 |
|---|---|
GET /v1/content/:orgSlug/:projectSlug/models | すべてのコンテンツモデルを一覧表示 |
GET /v1/content/:orgSlug/:projectSlug/entries | フィルタリング付きでエントリを一覧表示 |
GET /v1/content/:orgSlug/:projectSlug/entries/:entrySlug | スラッグで単一エントリを取得 |
クエリパラメータ
API はすぐに使える豊富なクエリをサポートします:
language— 特定の言語でコンテンツを返すstatus— ドラフト、公開済み、またはアーカイブ済みでフィルタリングpage&limit— 大きな結果セットをページネートsort&order— 任意のフィールドで昇順または降順にソートfields— 必要なフィールドのみを選択(スパースフィールドセット)expand— リレーションフィールドをインラインで解決(N+1 クエリなし)search— エントリタイトルとテキストフィールドのフルテキスト検索filter[fieldName]— カスタムフィールド値でフィルタリング
認証
API key 認証でコンテンツを保護します。ダッシュボードで key を作成・管理し、x-api-key ヘッダーで渡します。
GET /v1/content/acme/website/entries?language=de&status=published
x-api-key: your-api-key
ローカライズされたコンテンツ管理を正しく
この Headless CMS が市場にある数十の他と何が違うのでしょうか? すべての機能が多言語コンテンツを念頭に置いて設計されています:
- フィールドレベルのローカライゼーション — どのフィールドが翻訳を必要とし、どのフィールドが普遍的(日付やブール値など)かをマーク
- 言語対応 API — 単一のクエリパラメータで任意の言語のコンテンツをリクエスト
- 翻訳ステータストラッキング — どのエントリに翻訳が不足しているかを一目で確認
- 一貫したスラッグ — エントリはすべての言語で同じスラッグを維持し、クリーンな URL 構造を実現
はじめに
better-i18n の Headless CMS は better-i18n プラットフォームの一部として利用できます。最初のモデルを定義し、ソース言語でエントリを作成し、数週間ではなく数分で API を通じてローカライズされたコンテンツの配信を開始しましょう。