ContentPulse の記事を Lovable アプリに公開。
Lovable アプリはデータを Supabase(Lovable Cloud)に保存します。ContentPulse は、レビュー済みで SEO に対応した記事を、あなた自身のプロジェクトにデプロイする小さく安全な Edge Function を介して、アプリのデータベースに直接送信します。本文 HTML、アイキャッチ画像、slug、抜粋はすでに設定済みです。コピー&ペーストは不要で、データベースのキーがあなたの側を離れることはありません。
Lovable Cloud(Supabase)が有効なすべての Lovable アプリで動作します。Edge Function は一度デプロイするだけ。ContentPulse は共有シークレットを使ってそれを呼び出します。
4 ステップで設定
posts テーブルを作成
Lovable アプリで、ブログ/コンテンツのデータが title、slug、body、status などの列を持つ Supabase テーブル(例:posts)にあることを確認してください。まだない場合は、Lovable に「posts テーブルのあるブログを追加して」と頼むだけです。
公開用関数をデプロイ
ContentPulse の小さな公開用 Edge Function を Supabase プロジェクトにデプロイします。共有シークレットを検証し、プロジェクトに既にある service role キーを使って posts テーブルに行を挿入(または更新)するため、そのキーが共有されることはありません。
ContentPulse で Lovable を接続
ContentPulse のサイト設定で連携を開き、Lovable を選択し、関数 URL https://PROJECT_REF.supabase.co/functions/v1/contentpulse-publish と共有シークレットを貼り付けて、接続をクリックします。
執筆して公開
記事を執筆してレビューし、Lovable に公開をクリックします。投稿は本文、アイキャッチ画像、slug、抜粋とともに Supabase テーブルに書き込まれ、Lovable アプリで表示できる状態になります。
インストールガイド
Supabase の posts テーブルを確認
Lovable アプリは Lovable Cloud を使用しており、その内部は Supabase です。プロジェクトを開き、記事が含まれるテーブルを確認してください。ContentPulse が送信するデフォルトのフィールド名(title、slug、body、excerpt、cover_image_url、status、published_at)は、既存の列に合わせて構成できます。
シークレットで Edge Function をデプロイ
提供されるテンプレートを使って、contentpulse-publish という名前の Supabase Edge Function を作成します。環境変数 CONTENTPULSE_SECRET を長いランダム文字列に設定します。関数はリクエストごとにそのシークレットを検証し、プロジェクトに留まる service role キーで特権的な upsert を実行します。
ContentPulse で Lovable を接続
ContentPulse のダッシュボードでサイトを開き、連携タブに移動して Lovable カードを選択します。関数 URL https://PROJECT_REF.supabase.co/functions/v1/contentpulse-publish を入力し、共有シークレットを貼り付けて接続をクリックします。次に公開する記事が Lovable アプリに表示されます。
連携があなたの代わりに処理すること
本文 HTML
記事コンテンツはクリーンでテーマに依存しない HTML にレンダリングされ、本文の列に書き込まれます。見出し、段落、リスト、引用、リンクは、Lovable アプリが投稿を表示するあらゆる場所で正しく表示されます。
アイキャッチ画像
ヒーロー画像の URL はカバー画像フィールドで送信されるため、アプリは投稿の上部や一覧でそれを表示できます。
構成可能なフィールド名
ContentPulse が送信する JSON キー(タイトル、slug、本文、抜粋、カバー画像、ステータス、公開日)は構成可能なので、関数はテーブルの列にきれいにマッピングされます。
SEO slug と抜粋
slug とメタディスクリプションは本文とともに送信されるため、公開ページは SEO 最適化された URL と一覧用の要約を保持します。
下書きまたは公開
各投稿にはステータス値(下書きまたは公開)が送信されるため、ContentPulse で選択したステータスに応じて、アプリはレビュー中の記事を非表示にしたり、公開して表示したりできます。
複製ではなく更新
記事が更新されると、同じ外部識別子が送信されるため、関数は複製を作成するのではなく、既存の行をその場で更新します(同じ slug、同じ URL)。