普通の WordPress から Shifter Headless へコンテンツを移行する方法

Advent Calendar の季節、皆様いかがお過ごしでしょうか。
デジタルキューブグループのAdvent Calendar 2023 の1日目は、2年連続で楽しい楽しいマイグレーションのお話です。

Headless 界隈がにわかに盛り上がっているここ最近、波に乗り遅れてはいけないというミーハー心がうずいたので急いでデータの移行の手順を書いた次第です。あんまり難しいことはやっていません。

この記事で取り扱うもの

  1. 一般的な WordPress からコンテンツのデータのみをエクスポートする方法
  2. Shifter Headless にデータをインポートする方法

取り扱わないもの

  1. 各フレームワークと Shifter Headless のインテグレーション方法
  2. Netlify や Cloudflare Workers, Azure Web App 等へのデプロイ方法

用意するもの

  • 一般的な WordPress (ここでは Local by Flywheel を使います)
  • All-in-One WP Migration プラグインまたは WordPress 標準のエクスポート 機能 (WXR: WordPress eXtended RSS)
  • Shifter Headless
    • サインアップしてね

WordPress からデータをエクスポートします

WordPress にログインします

データをエクスポートします

A. WordPress標準のエクスポート 機能 (WXR: WordPress eXtended RSS) を使う場合

1. [ツール][エクスポート]をクリックします

2. [エクスポートする内容を選択]は、[すべてのコンテンツ]を選択します

3. エクスポートファイルをダウンロードをクリックして XML ファイルをダウンロードします

B. All-in-One WP Migration を使う場合

1. WordPressのダッシュボードにログイン後、All-in-One WP Migration プラグインをインストールし、有効化をします

2. [Tool]→ [Export] へ進みます

3. 以下のチェックボックスにチェックを入れます。 (spam comments と post revisions は任意)
テーマとプラグインは Headless 環境には不要なのでチェックを入れてエクスポートファイルから除外します。
今回インポートするデータはコンテンツのみのため、ユーザのデータも不要です。対象のテーブルにもチェックを入れてエクスポートファイルから除外します

  • Do not export spam comments
  • Do not export post revisions
  • Do not export themes (files)
  • Do not export inactive themes (files)
  • Do not export must-use plugins (files)
  • Do not export plugins (files)
  • Do not export inactive plugins (files)
  • Do not include the selected database tables

4. Do not include the selected database tables にチェックを入れると、どのテーブルを除外するかを選択するポップアップが出ます。
ここでは wp_userswp_usermetaにチェックを入れて [Done] をクリックします。Headless 二セットアップされたユーザ情報を上書きしないためです。

5. [EXPORT TO] から [FILE] をクリックして.wpressをダウンロードします。

Shifter Headless にデータをインポートします

Shiffter Headless のサイトを作成・起動してログインをします

WordPress にデータをインポートします

A. WordPress標準のエクスポート 機能 (WXR: WordPress eXtended RSS) を使う場合

1.[Tools] → [Import] へ進みます

2. プラグインページで WordPress Importe rを有効化します

3. Tools → WordPress の Run Importerをクリックします

4. [Choose File] から、ダウンロードした WXR ファイルをアップロードし、インポートします

5. Assign Authors が表示された場合、ユーザを作成するか Admin を選択します。
また、画像がダウンロード可能な場合、 [Download and Imoprt file Attachments] にチェックを入れるとダウンロードします。

6. «All done. Have fun!»のメッセージが表示されたらインポート完了です。
コンテンツや画像などがインポートされたかを投稿一覧やメディアライブラリで確認しましょう。

B. All-in-One WP Migration を使う場合

1. All-in-One WP Migration プラグインを有効化します。
インポートするファイルのサイズが大きい場合は Unlimited Extension も有効化します。

2. All-in-One WP Migration → Importに進み、インポートするファイルをドラッグ&ドロップするか、 [IMPORT FROM] のボタンをクリックして選択します。

4. [PROCEED] をクリックして処理を続行します

5. インポートが完了しました。

6. Shifter ダッシュボードに戻り、再度ログインをします。

[WordPress データベースを更新] の表示が出たらクリックしてデータベースのアップグレードします。

再ログイン後、コンテンツや画像などがインポートされたかを投稿一覧やメディアライブラリで確認しましょう。

インポート作業の完了

あとは必要なプラグインを有効化し、お好みのフレームワークなどと連携させ、コンテンツの表示が出るかを確認します。

aka Written by: