ホーム 記事一覧 ブック DH週間トピックス 検索 このサイトについて
English
ContentfulでPublishボタンが押せない原因と解決方法 — ロケール設定の落とし穴

ContentfulでPublishボタンが押せない原因と解決方法 — ロケール設定の落とし穴

はじめに Contentfulで多言語サイトを構築中、運用担当者から「新規ページを作成してもPublishボタンがアクティブにならない」という報告を受けました。既存ページの更新は問題なくできるのに、新規作成だけができないという状況です。 本記事では、原因の特定プロセスと解決方法を紹介します。 環境 Contentful(ヘッドレスCMS) ロケール: 日本語(ja、デフォルト)+ 英語(en) Next.js + Contentful Delivery API でフロントエンドを構築 症状 新規にPageエントリーを作成し、必要な情報をすべて入力しても Publishボタンがグレーアウト してクリックできない 既存ページの更新(タイトルや本文の変更)は問題なくPublishできる Draft保存は正常に動作する 原因の切り分け 1. コンテンツタイプのバリデーションを確認 まず、pageコンテンツタイプのフィールド定義を確認しました。 title: Symbol, required: true, localized: true slug: Symbol, required: true, localized: false body: RichText, required: false, localized: true bodyMarkdown: Text, required: false, localized: true titleとslugが必須ですが、どちらも入力済み。slugのバリデーション(^[a-z0-9]+(?:-[a-z0-9]+)*$)にも違反していませんでした。 2. ユーザー権限を確認 Management APIでスペースメンバーシップを確認しました。 curl -s -H "Authorization: Bearer $TOKEN" \ "https://api.contentful.com/spaces/$SPACE_ID/space_memberships" 報告者はAdmin権限を持っており、権限の問題ではありませんでした。 3. APIから直接Publishを試行 — 原因特定 UIでは原因がわからなかったため、Management APIから直接Publishを試みました。 これが決め手になりました。 curl -s -X PUT \ -H "Authorization: Bearer $TOKEN" \ -H "X-Contentful-Version: 13" \ "https://api.contentful.com/spaces/$SPACE_ID/environments/master/entries/$ENTRY_ID/published" レスポンス: ...

Contentfulの全文検索は2文字以上の検索語が必要?

Contentfulの全文検索は2文字以上の検索語が必要?

Contentfulを使用していますが、2文字以上の検索語が必要そうでした。 A query will ignore search tokens with less than 2 characters. https://www.contentful.com/developers/docs/references/content-delivery-api/#/reference/search-parameters/full-text-search-on-a-field この点は日本語などを含むデータに対して注意が必要そうです。 追記 microCMSでは、1文字からの検索が可能でした。 https://microcms.io/