2026年8月10日

2026年8月10日

WordPressとDatoCMSの違い|ヘッドレスCMSとの使い分けと移行の手順

WordPressとDatoCMSは、どちらも「記事や固定ページを管理するCMS」ですが、役割の範囲が大きく違います。WordPressは管理画面と表示(テーマ)が一体になったCMSで、サーバーに置けばそれだけでWebサイトになります。DatoCMSは表示を持たないSaaS型のヘッドレスCMSで、コンテンツをAPIで配信するだけです。表示側はNext.jsやNuxt、Astroなどで自分たちで作ります。

この記事では、両者の違いを仕組み・API・料金・運用の観点で整理し、どちらを選ぶべきかの判断基準と、WordPressからDatoCMSへ記事を移す公式の手順を紹介します。料金や上限は2026年11月時点で公式サイトを確認した内容です。

仕組みの違い

WordPress

WordPressはPHPとMySQL/MariaDBで動くオープンソースのCMSです。自分でサーバーを用意して設置するか、レンタルサーバーの簡単インストールを使います。公式の推奨環境はPHP 8.3以上、MySQL 8.0以上またはMariaDB 10.11以上、HTTPS対応です。

テーマとプラグインで見た目と機能を足していく作りで、ブログ、コーポレートサイト、ECなどをコードを書かずに作れます。表示を切り離して使いたい場合も、コアに含まれるREST API(/wp-json/wp/v2/)でコンテンツを取り出せます。

DatoCMS

DatoCMSはSaaS型ヘッドレスCMSです。サーバーの設置や更新はなく、ブラウザの管理画面でコンテンツの構造(モデル)を定義し、編集者がレコード(個々の記事)を入力します。主な要素は次のとおりです。

  • モデルとレコード: モデルはデータベースのテーブル、レコードはその行にあたります。モデルにはテキスト・日付・数値・画像・リンクなどのフィールドを並べます。
  • Modular content と Structured Text: ブロックを組み合わせてランディングページを組み立てるフィールドと、画像や独自ブロックを含むリッチテキストをJSON形式で保存するフィールドがあります。HTMLの塊ではなく構造化データで返るため、表示側で細かく制御できます。
  • 多言語: フィールド単位で言語ごとの値を持てます。
  • 画像配信: 画像はimgixのパラメーター(幅・高さ・形式など)で変換でき、GraphQLの responsiveImage で srcSet などをまとめて受け取れます。

APIの違い

DatoCMSの読み出しは、GraphQLで書かれた読み取り専用の Content Delivery API を使います。エンドポイントは https://graphql.datocms.com/ で、すべてPOSTで送り、APIトークンを Authorization ヘッダーに付けます。公式ドキュメントの例は次の形です。

curl 'https://graphql.datocms.com/' \
  -H "Authorization: Bearer $DATOCMS_READONLY_TOKEN" \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  --data-binary '{ "query": "{ allPosts { title } }" }'

allPosts の部分は、自分で作ったモデル名から自動で生成されるクエリ名です。配信は世界各地のCDN経由で行われます。スキーマやコンテンツをプログラムから作成・更新するときは、別の Content Management API を使います。下書きを編集者にリアルタイムで見せたい場合は、Server-Sent Eventsで変更を受け取る Real-time Updates API も用意されています。

WordPressのREST APIは、追加の設定なしで公開済みの投稿や固定ページをJSONで返します。

curl 'https://example.com/wp-json/wp/v2/posts?per_page=5&_fields=id,title,link'

WordPressの本文(content.rendered)はブロックエディターが出力したHTMLのまま返るので、表示側で部品ごとに組み替えるのは得意ではありません。この点は、構造化データで返すDatoCMSとの大きな違いです。

比較表

観点 WordPress DatoCMS
提供形態 オープンソース(自前サーバー) SaaS(サーバー不要)
表示(フロントエンド) テーマで完結 自分で開発(Next.jsなど)
API REST(コア標準)、GraphQLはプラグイン GraphQL(読み出し)、Content Management API(書き込み)
本文の形式 ブロックのHTML 構造化データ(JSON)
更新・セキュリティ対策 自分で実施 事業者が実施
費用 ソフトは無料、サーバー代が必要 無料プランあり、有料はProfessionalから
データの置き場所 自分のデータベース 事業者のクラウド
公式ドキュメント 日本語版あり 英語

料金と上限(2026年11月時点)

WordPressはソフトウェア自体が無料で、かかるのはサーバー・ドメイン・有料テーマやプラグインの費用です。

DatoCMSには無料プランがあり、Professional相当の機能を少ない上限で使えます。公式の料金ページで確認した主な上限は次のとおりです。

項目 Free Professional
月額 無料 年払いで月149ユーロから(月払いは月199ユーロ)
共同編集者 1 10
レコード数 300 10万
Content Delivery API 呼び出し 月10万回 月100万回
転送量 月10GB 月1TB
ファイル容量 200MB 500GB

無料プランは上限を超えた利用が認められておらず、上限に達するとサービスが正常に応答しなくなると説明されています。レコード300件は小さなサイトでもすぐ届く数なので、本番運用は有料プランを前提に見積もるのが現実的です。上限や価格は変わることがあるため、契約前に公式の料金ページで最新の条件を確認してください。

どちらを選ぶか

WordPressが向いているケース

  • 社内に開発者がおらず、テーマとプラグインでサイトを完成させたい
  • 編集担当者が日本語の管理画面で記事を書く
  • ブログやコーポレートサイトで、表示もCMSに任せたい
  • 予算を抑えたい(ソフトウェア費用がかからない)

DatoCMSが向いているケース

  • Next.jsなどで表示側を自分たちで開発する体制がある
  • Webサイトとアプリなど、複数のチャネルに同じコンテンツを配信したい
  • 本文を構造化データで扱い、デザインの自由度を高めたい
  • CMSのサーバー運用や更新作業を持ちたくない

迷ったら、まず「表示側を開発・保守できる人がいるか」を確認してください。いなければ、DatoCMSを選んでもサイトは完成しません。表示速度だけが目的なら、通常のWordPressにキャッシュとCDNを組み合わせる方が手間も費用も小さく済むことが多いです。既存のWordPressの管理画面を残したままヘッドレス化する方法もあります(ヘッドレスCMSの比較を参照)。

WordPressからDatoCMSへ記事を移す

DatoCMSは公式のCLIとWordPress取り込み用のプラグインを提供しています。Node.jsが入った作業用PCで次のように実行します。

# DatoCMS CLI をインストール
npm install -g datocms@latest

# WordPress 取り込み用プラグインを追加
datocms plugins:install @datocms/cli-plugin-wordpress

# 取り込みを実行(URL・ユーザー名・パスワード・トークンは自分の値に置き換える)
datocms wordpress:import \
  --ignore-errors \
  --wp-url https://example.com \
  --wp-username admin-user \
  --wp-password "$WP_PASSWORD" \
  --api-token "$DATOCMS_FULL_ACCESS_TOKEN"

各オプションの意味は次のとおりです。

  • --wp-url: 移行元のWordPressのURL
  • --wp-username / --wp-password: 管理者権限を持つWordPressユーザー
  • --api-token: DatoCMSの読み書き権限を持つフルアクセスのAPIトークン
  • --ignore-errors: 途中でエラーが出ても取り込みを続ける

公式ドキュメントによると、投稿は記事、固定ページはページとして取り込まれ、著者・カテゴリー・タグはそれぞれ別のモデルとして作られます。メディアファイルもDatoCMSのメディアギャラリーにアップロードされます。

一方、次のものは取り込まれません。

  • カスタム投稿タイプ
  • 多言語サイトの第2言語以降のコンテンツ(主言語のみ)
  • SEOの設定やスライダーなど、プラグインが管理しているデータ

取り込み後は、表示側のURL設計に合わせて旧URLから新URLへの301リダイレクトを用意してください。WordPress側のパスワードやトークンは、作業が終わったら変更・削除しておくと安全です。

まとめ

  • WordPressは表示まで一体のCMS、DatoCMSは表示を持たないSaaS型のヘッドレスCMSです。
  • DatoCMSはGraphQLで構造化されたコンテンツを配信し、サーバー運用が不要な代わりに、表示側の開発と月額費用が必要です。
  • 無料プランはレコード300件などの上限があり、本番は有料プランでの見積もりが前提になります。
  • 移行は公式CLIの datocms wordpress:import で投稿・固定ページ・メディアを移せますが、カスタム投稿タイプやプラグインのデータは別途対応が必要です。

関連記事:

お気軽にご相談ください

お見積りへ お問い合わせへ
▲