ブログタイトル

目次

ベストな運用?

このブログの記事の内容はNotionで下書きして、wordpressのブロックエディタに張り付けて運用していて、Notionからそのままデータを持ってきてもいい気がするし、ぶっちゃけ流行ってるNotionをそのままサイト化するのも全然ありだと思った。ベストな運用方法はないのかなーと思い、Gemini先生に聞いた。


1. WordPress × フロントエンド (Next.js)(現状)

現在の構成です。

メリット:

SEOに強い: Rank MathやYoast SEOといった強力なプラグインが使えます。メタデータ管理、サイトマップ生成、リダイレクト設定などがGUIで完結します。

エコシステム: WordPressの膨大なプラグイン資産や、確立されたデータ取得方法(WPGraphQL, REST API)が利用できます。

コンテンツの所有: データベースもファイルも完全に自前で管理できます(セルフホストの場合)。

デメリット:

執筆の二度手間(最大の課題): Notionで書いた内容をWordPressに「コピペ」する作業が発生します。特にコードブロックや画像の転記は崩れやすく、ストレスの原因になります。

CMSの管理コスト: WordPress本体、プラグイン、PHP、データベースのアップデートやセキュリティ管理が常に必要です。


2. Notion × フロントエンド (Next.js)

Notionをデータベース(ヘッドレスCMS)として使い、Next.jsでフロントを構築する構成です。

メリット:

最高の執筆体験: 「コピペ」作業が完全になくなります。Notionで書いた記事のステータスを「公開」にするだけで、ブログに反映されるワークフローを構築できます。

CMS管理が不要: WordPressのようなサーバーサイドのCMS保守から解放されます。

柔軟なデータ管理: Notionのデータベース機能(テーブル、リレーション、フィルタ)を使い、カテゴリ、タグ、著者、公開日などを柔軟に管理できます。

デメリット:

SEO機能の自前実装: WordPressプラグインが担っていたSEO関連の機能をすべて自前で実装する必要があります。メタデータ(タイトル, description)をNotionのテーブルで管理し、Next.js側でそれを読み込んで<head>タグを生成する、といった処理が必要です。

APIの制約: Notion APIは強力ですが、WordPress(特にWPGraphQL)ほど柔軟なクエリが書けない場合があります。また、APIのレスポンス速度やレートリミット(リクエスト回数制限)も考慮する必要があります。

ビルド時間: 記事が数百、数千と増えた場合、ビルド時(SSG)にNotion APIから全データを取得する時間が長くなる可能性があります(ISRでの緩和は可能です)。


3. Notion単体(または公開支援サービス)

Next.jsを使わず、NotionのWeb公開機能や、Super.so / Popsy といったサードパーティ製ビルダーでブログを公開する構成です。

メリット:

  • 究極の手軽さ: 執筆から公開までNotion内ですべて完結します。インフラ管理やコーディングは一切不要です。

デメリット:

Next.jsの利点をすべて失う:

デザインの自由度なし: Next.jsで作り込んだような独自のデザインは不可能です。

SEOが非常に弱い: メタデータの設定、構造化データ、サイトマップ生成などが極めて困難または限定的です。技術ブログとしての集客は厳しくなります。

パフォーマンス: 最適化されたNext.jsサイト(JAMstack)の速度には到底及びません。

機能の限界: 高度な検索機能、関連記事のロジック、インタラクティブな要素などは追加できません。

つまり、ざっくり要約すると運用の手軽さをとるならNotionに分があり、パフォーマンスやSEOをとるならWordPressという感じ?。SEOとかあんましどうでもいいし、Notion × フロントエンドでいい気がする。。

そうなると、クエリの柔軟性とかが懸念点なので、今後ちょっとずつNotionAPIをさわっていって考えていきたい。