2026年7月23日
2026年7月23日
WordPressとContentfulの違いと使い分け:仕組み・編集・運用・費用で比較
WordPress と Contentful は、どちらもコンテンツを管理する仕組み(CMS)ですが、作りが大きく違います。WordPress は記事の管理からページの表示までを1つのソフトウェアで受け持ち、自分で用意したサーバーで動かすオープンソースの CMS です。Contentful は、コンテンツを API で配信することに特化した SaaS 型のヘッドレス CMS で、ページの表示は別に作ったサイトやアプリが受け持ちます。
この記事では、両者の違いを仕組み・データの持ち方・編集・運用・費用の順に比べ、どちらを選ぶかの判断の目安を説明します。
仕組みの違い
| 観点 | WordPress | Contentful |
|---|---|---|
| 提供形態 | オープンソースのソフトウェア。自分でサーバーに設置する(ホスティング事業者の提供するものも含む) | Contentful 社のクラウドで動く SaaS |
| ページの表示 | テーマが HTML を生成して表示する | 表示の仕組みはない。Next.js・Astro などのフロントエンドやアプリを別に作る |
| コンテンツの取り出し | テーマで表示するほか、REST API(標準)で取得できる | Content Delivery API(REST)と GraphQL API で取得する |
| 拡張 | プラグインとテーマ | Contentful 上のアプリや Webhook、フロントエンド側の実装 |
| サーバーの運用 | 自分で行う(本体・プラグインの更新、バックアップ、セキュリティ対策) | Contentful 社が行う |
WordPress もテーマを使わずに REST API だけを使えばヘッドレス CMS として使えます。ただし、管理画面とデータベースを動かすサーバーの運用は残ります。Contentful は最初からヘッドレス専用で、サーバーの運用は要りませんが、サイトの表示部分は自分たちで作ることになります。
コンテンツの持ち方の違い
最も大きな違いは、記事の中身をどういう形で持つかです。
WordPress:投稿の本文は、ブロックエディターで作った HTML(ブロックの区切りのコメントを含む)として1つのフィールドに保存されます。題名、本文、抜粋、アイキャッチ画像、カテゴリーなどの決まった項目があり、それ以外の項目はカスタムフィールドやカスタム投稿タイプで追加します。テーマで表示する前提の形なので、同じ記事をアプリなど別の場所で使うと、本文の HTML をそのまま扱うことになります。
Contentful:最初に「コンテンツタイプ」(例: ブログ記事、著者、商品)を定義し、項目(短いテキスト、リッチテキスト、日付、画像、ほかのエントリーへの参照など)を自分で設計します。リッチテキストの項目は HTML ではなく、段落や見出しを木構造で表した JSON で保存されるため、Web サイト、アプリ、ほかのサービスなど、表示先に合わせて変換して使えます。その代わり、どの表示先でもリッチテキストを HTML などに変換する処理が必要です。
同じ記事をスラッグで1件取得するコードを比べると、違いが分かります。WordPress は REST API の URL を呼べば、本文が HTML で返ります。
// WordPress:REST API で投稿を1件取得する
const res = await fetch('https://cms.example.com/wp-json/wp/v2/posts?slug=hello-world');
const [post] = await res.json();
console.log(post.title.rendered); // 題名(HTML)
console.log(post.content.rendered); // 本文(HTML)
Contentful は公式の JavaScript ライブラリでエントリーを取得し、リッチテキストを HTML に変換して使います。blogPost やフィールド名の slug・title・body は、自分で定義したコンテンツタイプに合わせます。
// Contentful:Content Delivery API でエントリーを1件取得する
// npm install contentful @contentful/rich-text-html-renderer
import { createClient } from 'contentful';
import { documentToHtmlString } from '@contentful/rich-text-html-renderer';
const client = createClient({
space: process.env.CONTENTFUL_SPACE_ID,
accessToken: process.env.CONTENTFUL_DELIVERY_TOKEN,
});
const entries = await client.getEntries({
content_type: 'blogPost',
'fields.slug': 'hello-world',
});
const entry = entries.items[0];
console.log(entry.fields.title); // 題名(テキスト)
console.log(documentToHtmlString(entry.fields.body)); // 本文(JSON から HTML に変換)
編集とプレビューの違い
WordPress:管理画面とブロックエディターは日本語で使え、プレビューボタンを押せば公開前の見た目をテーマで確認できます。予約投稿、リビジョン、ユーザーの権限グループ(管理者・編集者・投稿者など)も標準で使えます。
Contentful:管理画面(Web アプリ)で、コンテンツタイプに沿ったフォームに入力していく形で編集します。エントリーには下書き・公開などの状態があり、Content Delivery API が返すのは公開済みのものだけです。公開前の内容は Content Preview API で取得できますが、それを使ってサイト上で見た目を確認するプレビューの仕組みは、フロントエンド側で用意する必要があります。
編集者が「書いた記事がどう見えるか」をすぐ確認したい体制なら、標準でプレビューのある WordPress のほうが導入の手間は少なくなります。Contentful を選ぶ場合は、プレビューの仕組みをフロントエンドの開発範囲に含めておきます。
多言語と環境の違い
多言語:Contentful はスペースにロケール(言語)を追加し、項目ごとに言語別の値を持てます。WordPress 本体には、1つの投稿に言語別の内容を持たせる機能がないため(2026年11月時点)、多言語プラグインを使うか、マルチサイトで言語ごとにサイトを分けます。
環境:Contentful には、本番(master)とは別の環境を作り、コンテンツモデルの変更を試してから本番に反映する仕組みがあります。WordPress では、ステージング用の WordPress を別に用意し、データベースやファイルを移す運用になります。
運用と費用の違い
WordPress:ソフトウェア自体は無料ですが、サーバー(レンタルサーバーなど)の費用がかかり、本体・テーマ・プラグインの更新、バックアップ、不正アクセス対策を自分たちで続ける必要があります。表示まで WordPress で行うなら、フロントエンドを別に作る費用はかかりません。
Contentful:サーバーの運用は不要ですが、利用料はプランで決まります。無料プランもありますが、レコード(エントリーとアセット)の数、ロケールの数、API の呼び出し回数などに上限があり、上限を超える規模では有料プランが必要です。プランの内容と上限は変わることがあるため、Contentful の公式の料金ページと利用上限(Usage limits)のページで確認してください(2026年11月時点)。また、表示するサイトを別に作り、そのホスティングも用意する費用がかかります。
データの持ち主と乗り換え
WordPress のデータは自分のデータベースにあり、管理画面の「ツール」→「エクスポート」で記事を XML(WXR 形式)に書き出せます。データベースごとバックアップすることもできます。
Contentful のデータは Contentful 社のクラウドにあります。公式の CLI(contentful space export)でスペースの中身を JSON に書き出せますが、リッチテキストやコンテンツモデルの構造は Contentful 独自の形なので、別の CMS に移すときは変換のプログラムが必要です。
どちらを選ぶかの目安
WordPress が向いている場合
- 1つの Web サイトを作り、表示まで CMS に任せたい
- 編集者が日本語の管理画面とプレビューを使って、自分で記事を作りたい
- プラグインで問い合わせフォームや SEO 対策などの機能を追加したい
- 開発の予算が限られていて、フロントエンドを別に作る余裕がない
Contentful が向いている場合
- 同じコンテンツを Web サイト、スマートフォンのアプリ、店頭の画面など複数の場所に配信する
- 商品情報や店舗情報など、項目の決まったデータを構造化して管理したい
- 項目単位の多言語管理や、複数のブランド・チームでの共同管理が必要
- フロントエンドを開発できるチームがあり、サーバーの運用は持ちたくない
両方を同時に使い、同じ記事を二重に管理するのは手間が増えるだけなので避けます。WordPress から Contentful へ、または Contentful から WordPress へ移る場合は、どちらか一方を正のデータとして決め、移行の計画を立ててください。
まとめ
- WordPress は表示まで受け持つオープンソースの CMS、Contentful は API で配信する SaaS 型のヘッドレス CMS
- WordPress の本文は HTML、Contentful はコンテンツタイプで項目を設計し、リッチテキストは JSON で持つ
- WordPress は標準でプレビューや日本語の管理画面があり、Contentful はプレビューなどの表示側を自分で作る
- Contentful は多言語と環境の仕組みを標準で持ち、WordPress はプラグインや別環境で補う
- 費用は、WordPress はサーバーと運用の手間、Contentful はプランの利用料と表示側の開発・ホスティングで考える