コンテンツにスキップする

CMS への接続

一般的なワークフロー

VitePress を CMS に接続するには、主に 動的ルート が使用されます。先に進む前に、その仕組みを理解しておいてください。

CMS はそれぞれ動作が異なるため、ここでは特定のシナリオに適応する必要がある、一般的なワークフローのみを提供します。

  1. CMS で認証が必要な場合は、.env ファイルを作成して API トークンを保存し、次のように読み込みます。

    js
    // posts/[id].paths.js
    import { loadEnv } from 'vitepress'
    
    const env = loadEnv('', process.cwd())
  2. CMS から必要なデータをフェッチし、適切なパスデータの形式にフォーマットします。

    js
    export default {
      async paths() {
        // use respective CMS client library if needed
        const data = await (await fetch('https://my-cms-api', {
          headers: {
            // token if necessary
          }
        })).json()
    
        return data.map(entry => {
          return {
            params: { id: entry.id, /* title, authors, date etc. */ },
            content: entry.content
          }
        })
      }
    }
  3. コンテンツをページにレンダリングします。

    md
    # {{ $params.title }}
    
    - by {{ $params.author }} on {{ $params.date }}
    
    <!-- @content -->

統合ガイド

VitePress と特定の CMS を統合する方法についてのガイドを書いた場合は、以下の「このページを編集」リンクを使用して、ここに送信してください!

MIT ライセンスに基づきリリースされました。