プラグイン

MW WP Form から Form Plant へ代替・移行する完全ガイド

2026.06.04


はじめに

Form Plant v1.2 で、MW WP Form のフォームを Form Plant へ自動移行するツールを本体に同梱しました(移行したフォームをその場ですぐ試せるよう、初期状態も見直しています)。本記事は、その移行ツールの使い方から、移行後に確認すべき点、デザインの引き継ぎ、フィールド・メール設定のマッピングまでを、一つのページで通して解説する移行の総合ガイドです。

MW WP Form は 2023 年 9 月に開発終了がアナウンスされ、現在は株式会社 Web の相談所が脆弱性対応中心の保守を引き継いでいます。さらに、MW WP Form の管理画面には、ファイル・画像のアップロード機能([mwform_file] / [mwform_image])を v5.2(2026 年内リリース予定)で削除するという廃止予告が表示されるようになりました。表示される警告の原文は次のとおりです。

MW WP Form: Notice of feature removal
The [mwform_file] and [mwform_image] shortcodes will be removed in version 5.2 (planned for release within 2026). The following form(s) currently use these shortcodes:
(該当するフォーム名が一覧表示されます)

つまり、[mwform_file] または [mwform_image](ファイル・画像アップロード)を使っているフォームは、v5.2 でその機能が使えなくなるということです。ファイル添付を使っている場合は注意が必要です。

Form Plant はファイルアップロードに対応しており、移行ツールも [mwform_file] / [mwform_image] を Form Plant のファイルフィールドへ変換します。確認画面・送信データ保存・日本語対応といった MW WP Form で使えていた機能を備え、専用の移行ツールまで用意しているので、MW WP Form の代替・乗り換え先(後継)としてぜひご利用ください。アップロード機能を使い続けたい場合の移行先としても、今が準備を始める妥当な時期だと考えています。本記事が、その移行作業の手引きになれば幸いです。

なお、移行ツールは Form Plant の無料版に同梱されており、MW WP Form が有効化されている環境でのみ管理メニューに表示されます。追加費用や別プラグインは不要です。

まずは試してみる(クイックスタート)

詳しい説明の前に、まずは「移行したフォームが動く」を体験してみましょう。Form Plant v1.2 以上では、移行したフォームは公開状態・標準デザイン適用で生成されるので、次の手順だけですぐに送信テストまで試せます。

  1. Form Plant(v1.2 以上)をインストール・有効化する。 WordPress.org の公式ディレクトリから「Form Plant」で検索してインストールできます。MW WP Form は有効のままにしておいてください。


    プラグイン追加画面で Form Plant を検索・インストール・有効化する様子
    プラグイン追加画面で Form Plant を検索・インストール・有効化する様子
  2. 移行ツールでフォームを 1 つ移行する。 管理画面の Form Plant → ツール → 「MW WP Form Migration」タブを開き、試したいフォームを 1 つ選んで「移行を実行」を押します。元の MW WP Form はそのまま残るので、安心して試せます。


    「MW WP Form Migration」タブでフォームを 1 つ選んで「移行を実行」を押す様子
    「MW WP Form Migration」タブでフォームを 1 つ選んで「移行を実行」を押す様子
  3. 非公開のテストページに設置する。 固定ページを 1 つ作って公開状態を「非公開」にし、ブロックエディタで Form Plant のブロックを追加して、移行したフォームを選びます。非公開ページはログイン中の管理者なら閲覧・送信できるので、訪問者に見せることなく、本番と同じ URL の仕組みでテストできます。


    固定ページを「非公開」に設定し、Form Plant ブロックで移行済みフォームを選択する様子
    固定ページを「非公開」に設定し、Form Plant ブロックで移行済みフォームを選択する様子
  4. テスト送信してみる。 その非公開ページを開き、入力 → 送信までを試して、フォームが動くこと・メールが届くことを確かめます。


    非公開ページで表示された移行フォームに入力して送信、完了画面まで進んだ様子
    非公開ページで表示された移行フォームに入力して送信、完了画面まで進んだ様子

これで「使える」ことが確認できました。 見た目も動作もこれで十分、という方は、あとは本番ページのショートコードを差し替えれば移行完了です(差し替え手順は第 3 章ステップ 7)。この先の長い説明は読まなくてもかまいません。お疲れさまでした。

一方で、メールの宛先やフィールド名をちゃんと確認したい、デザインを旧フォームに合わせたい、functions.php のフックを使っている、という方は、続く詳細な説明をご覧ください。必要なところだけ拾い読みしてもかまいません。

1. 移行ツールでできること・できないこと

最初に全体像を押さえておきましょう。移行ツールが自動で変換する範囲と、手作業が必要な範囲、そしてそもそも移行対象外のものを表にまとめます。

項目 移行の扱い
入力項目(フィールド構成・ラベル・必須・選択肢) ✅ 自動変換
管理者メール・自動返信メールの設定(宛先・件名・本文) ✅ 自動変換
メール本文の差し込みタグ({お名前}{field:your_name} 等) ✅ 自動変換
入力画面・確認画面の HTML テンプレート(レイアウト構造) ✅ 自動変換(構造を保持)
確認画面の有無・ボタン文言(送信 / 確認 / 戻る) ✅ 自動変換
カスタムメールタグ([mwform_custom_mail_tag] ✅ 自動変換(新フィールド型へ)
functions.phpmwform_* フック ⚠️ 手動で書き換え(第 9 章・フックの移行対応表参照)
[mwwp_formkey key="…"] ショートコードの差し替え ⚠️ 手動(自動置換はしない/案内のみ)
フォームのデザイン CSS ⚠️ Form Plant の標準デザインで生成(MW WP Form のデザインそのままではない。見た目を忠実に引き継ぐ場合は要調整・第 6 章参照)
送信データ(過去のお問い合わせ内容) 移行されない
Akismet 連携 ❌ 移行されない(Form Plant のスパム対策を別途設定)
グラフ(チャート)機能 ❌ 移行されない
URL 引数による画面遷移設定 ⚠️ Form Plant は画面内で遷移するモデル(確認画面の URL を個別指定しない設計。完了ページのリダイレクトは可能)

ここで特に強調しておきたい点が 2 つあります。

送信データ(エントリー)は移行されません。 移行されるのは「フォームの定義」であって、過去にそのフォームから送信されたお問い合わせ内容は対象外です。過去データが必要な場合は、移行後も MW WP Form をしばらく残しておくか、MW WP Form 側で先に CSV エクスポートしておいてください。

元の MW WP Form のフォームは消えません。 移行ツールは、既存のフォームを上書きするのではなく、新しい Form Plant のフォームを別途生成します。元のフォームは公開状態のまま残るので、見比べながら作業できますし、何度でもやり直せます。安心して試してください。

2. 移行を始める前に(準備)

移行作業に入る前に、次の準備をしておきます。

  1. Form Plant v1.2 以上をインストール・有効化する。 WordPress.org の公式ディレクトリから「Form Plant」で検索してインストールできます。移行ツールは本体に含まれているので、別途のインストールは不要です。
  2. MW WP Form を最新版に更新しておく。 移行ツールは MW WP Form の最新の保存形式を前提に変換します。古いバージョンのままだと一部が正しく読み取れない場合があるため、更新してから移行することを推奨します。
  3. 念のためバックアップを取る。 前述のとおり移行は非破壊(コピー生成)ですが、本番サイトでの作業前にデータベースのバックアップを取っておくと安心です。
  4. 移行は「コピーを作る」操作だと理解しておく。 元フォームは残り、何度でも移行できます。最初は気軽に 1 フォームだけ移行して、結果を確認してから本格運用に移るのがおすすめです。

3. 移行の手順

ここからが本題です。管理画面での移行手順を順番に見ていきます。

ステップ 1: 移行ツールを開く

WordPress 管理画面のメニューから Form Plant → ツール → 「MW WP Form Migration」タブを開きます。このタブは、MW WP Form が有効化されている場合のみ表示されます。表示されない場合は、MW WP Form が有効になっているか確認してください。


管理メニュー「Form Plant → ツール → MW WP Form Migration」タブ
管理メニュー「Form Plant → ツール → MW WP Form Migration」タブ

ステップ 2: 移行するフォームを選ぶ

画面には、サイト内にある MW WP Form のフォームが一覧表示されます。移行したいフォームのチェックボックスをオンにします。複数フォームをまとめて選択することもできます。


フォーム一覧とチェックボックス選択 UI
フォーム一覧とチェックボックス選択 UI

ステップ 3: 移行を実行する

「移行を実行」ボタンを押すと、選択したフォームが Form Plant のフォームとして生成されます。生成されるフォームのタイトルには、移行元と移行日時が自動で付きます。

「お問い合わせ(from MW WP Form 2026-06-02 14:30:00)」

このように元タイトルへ日時が付くため、同じフォームを 2 回移行しても上書きされず、別々のフォームとして並びます。

生成されたフォームは、最初から「公開」状態で、Form Plant の標準デザインが適用された状態になっています。つまり、移行したらそのまま、そこそこ見栄えのするフォームとしてすぐに動作を試せます(詳しくはステップ 5.5)。

ステップ 4: 警告レポートを確認する

移行が終わると、フォームごとに警告レポートが表示されます。これは移行で「自動変換しきれなかった点」「変換時に判断を加えた点」を可視化したもので、移行ツールの中核となる機能です。レベルは 3 段階あります。

  • info(情報): 正常に処理したが、念のため知らせておきたい変換(例: 「日本語フィールド名を英数字キーに変換しました」)
  • warning(警告): 移行はしたが、設計の違いにより完全一致しない、あるいは確認が必要な箇所(例: 「range スライダーは number フィールドに変換しました」「汎用ボタンは移行されません」)
  • error(エラー): 変換に失敗した箇所

警告レポートは、移行後も Form Plant → ツール → MW WP Form Migration タブの一覧から「ログを見る」リンクでいつでも再表示できます。後から見返せるので、その場で全部メモする必要はありません。


警告レポートのモーダル表示
警告レポートのモーダル表示

ステップ 5: 生成されたフォームを確認する

Form Plant のフォーム一覧に、移行で生成されたフォームが追加されています。フォーム編集画面を開いて、フィールド構成・メール設定・確認画面などが意図どおりか確認します。具体的なチェック項目は次章にまとめます。

ステップ 5.5: (デザインにこだわらない場合)デザインはもう完了しています

ここまで読んで「やることが多い」と感じた方もいるかもしれません。ですが、デザインにこだわりがなく、そこそこ見栄えがすればよいという方は、もう何もする必要はありません

v1.2 以上では、移行したフォームは「すぐに試せる」ことを優先して、次の状態で生成されます。

  • 入力画面・確認画面の HTML テンプレートは off(Form Plant の標準レイアウトで表示)
  • フォームデザインは Form Plant 標準の CSS が on

つまり、移行直後から、項目を追加・削除してもレイアウトが自動で追従し、標準デザインでそこそこ整った見た目になっています。CSS を書いたりテンプレートを触ったりする必要はありません。 別のデザインプリセットを試したければ、フォーム設定の「レイアウト → フォームデザイン」で選び直すだけです。

この場合は、残るステップ 6(別ページでのテスト送信)とステップ 7(本番ページのショートコード差し替え)を進めれば移行完了です。第 6 章以降のデザイン調整は読み飛ばしてかまいません。

一方で、旧フォームの見た目をできるだけそのまま引き継ぎたい方や、テーマに合わせて細かく調整したい方は、第 6 章「デザインをそのまま引き継ぐには」をご覧ください。

ステップ 6: (まずは別ページで)テスト送信して確認する

本番ページのショートコードをいきなり差し替えるのではなく、まずは MW WP Form はそのままにして、テスト用の別ページで Form Plant のフォームを検証するのが安全です。移行は非破壊で、元の MW WP Form は公開状態のまま残っているので、本番を生かしたまま並行して確認できます。

  1. 下書きでテスト用の固定ページを 1 つ作り、そこに Form Plant のフォームを設置します。ブロックエディタなら、Form Plant のブロックアイコンを選んで、そのブロックから移行したフォームを選ぶだけで OK です(ショートコードを手で入力する必要はありません)。移行したフォームは公開状態で生成されているので、そのままブロックの選択肢に表示されます。クラシックエディタや他ページに埋め込む場合は、ショートコード [fplant id="45"] を貼り付けます(id は生成された Form Plant フォームの ID で、フォーム編集画面の URL や設置用ショートコードで確認できます)。
  2. そのテストページで、入力 → 確認画面 → 送信 → 完了 の流れを一通り試します。管理者メール・自動返信メールの受信、送信データの保存まで確認します。特に、第 4 章のチェックリスト(自動返信の宛先・バリデーションなど)をここで一緒に確かめると確実です。

この段階なら、万が一 Form Plant のフォームに不具合があっても、訪問者が見る本番フォームは MW WP Form のままなので影響がありません。落ち着いて調整できます。

ステップ 7: (確認がとれたら)本番ページのショートコードを差し替える(手動)

テストページで意図どおり動くことが確認できたら、いよいよ本番ページを切り替えます。ここは手作業が必要な箇所です。移行ツールは、ページ内に埋め込まれた [mwwp_formkey key="…"] ショートコードを自動では置き換えません(誤動作を避けるため、案内の表示にとどめています)。

固定ページや投稿に設置していたフォームは、ショートコードを Form Plant のものへ差し替えてください。

[mwwp_formkey key="123"]
        ↓ 手動で差し替え
[fplant id="45"]

差し替え後は、念のため本番ページでももう一度テスト送信して、問題なく動作することを確かめると安心です。すべての設置ページで差し替えが済めば、移行は完了です(MW WP Form の削除可否については第 10 章の FAQ をご覧ください)。

4. 移行後に必ず確認すべきこと(チェックリスト)

移行は自動でかなりの範囲をカバーしますが、設計の違いから「確認しておくべき箇所」がいくつかあります。以下は移行後の必須チェックリストです。

  • フィールドラベル(画面に表示される項目名)を設定し直す。MW WP Form の入力欄には name 属性(例: your-name)はありますが、「ラベル」という概念がありません(画面の項目名はフォーム編集画面に手書きしたテキストでした)。一方 Form Plant には「フィールド名(name)」と「フィールドラベル(表示名)」の 2 つがあるため、移行ツールは MW WP Form の name 属性の値を、フィールド名とフィールドラベルの両方に初期セットします。name が日本語の場合は、ラベル=日本語・フィールド名=半角英数(第 5 章)ときれいに分かれますが、MW WP Form では name を半角英数(例: your-name)で設定していることが多いため、その場合はフィールドラベルも your-name のままになります。画面に「お名前」のような日本語の項目名を出したい場合は、フォーム編集画面で各フィールドの「フィールドラベル」を日本語に設定し直してください(フィールド名はそのままで問題ありません)。
  • メール設定(管理者・自動返信)の宛先・件名・本文が正しく移っているか。本文中の差し込みタグも {field:…} 形式に変換されています。
  • 【重要】自動返信メールの宛先フィールドが実在するか。自動返信の送信先は「どのフィールドの値を宛先にするか」で決まります。元の指定と移行後のフィールド名がずれていると、管理画面上は設定が入っているように見えても、実際には自動返信が送信されないことがあります。テスト送信で自動返信が届くか必ず確認してください。
  • 同名フィールドが複数ある場合のバリデーション。元フォームに同じ名前のフィールドが複数あった場合、バリデーション設定の適用先が一意に定まらないことがあります(警告レポートに重複の通知が出ます)。該当する場合は必須・文字数などの設定を目視で確認してください。
  • 確認画面の有無とボタン文言(送信 / 確認へ進む / 戻る)が意図どおりか。なお、MW WP Form の「汎用ボタン」(mwform_button/送信もページ遷移もしない飾りボタン)は移行されず、警告で通知されます。
  • 完了 URL(リダイレクト)を設定していた場合の、リダイレクト先ページの中身。MW WP Form で「完了画面 URL(完了 URL)」を設定していた場合、その URL は Form Plant のリダイレクト先 URL にコピーされ、送信後アクションが「リダイレクト」モードになります。ここで注意したいのが、MW WP Form では完了画面用のページにもフォームのショートコードを置く構成だった点です。そのページに MW WP Form のショートコードが残ったまま(かつ MW WP Form が有効なまま)だと、リダイレクト先で MW WP Form 側の処理が優先され、Form Plant の送信完了がうまく表示されません。対処として、リダイレクト先の完了ページから MW WP Form のショートコードを削除して通常のサンクスページにするか、リダイレクトをやめて Form Plant の「完了メッセージ / 完了ページ」機能でページ内に完了表示する方法へ切り替えることを検討してください。
  • フォームのデザイン(CSS)。移行直後は Form Plant の標準デザインが適用されています。そのままでよければ調整不要です。旧フォームの見た目を忠実に引き継ぎたい場合のみ、次章を参照してください。

5. フィールドのマッピング(参考)

ここからは「何がどう変換されるのか」の参考情報です。移行作業中に警告の意味を理解したいときに参照してください。

5.1 主なフィールドの変換

MW WP Form Form Plant 備考
テキスト / テキストエリア / メール / URL / 数値 同等の型 ほぼそのまま
電話番号(3 分割入力) tel(3 分割を維持) 入力枠の分割もそのまま再現
郵便番号(2 分割入力) postal_code(2 分割を維持) 同上
セレクト / ラジオ / チェックボックス 同等の型 選択肢もそのまま移行
ファイル / 画像 file 画像は許可拡張子を画像のみに設定
日付(datepicker) date 日付フォーマットを正規化
range スライダー number スライダー UI は number に変換(警告あり)
パスワード password 強度メーター等は既定値で設定
カスタムメールタグ custom_mail_tag(新型) 第 7 章参照
各種ボタン(送信 / 確認 / 戻る) フォーム設定へ転写 文言・クラスを設定に反映
汎用ボタン(mwform_button 移行されない 送信もページ遷移もしない飾りボタンのため

なお、ファイル / 画像([mwform_file] / [mwform_image])は MW WP Form v5.2 で廃止予定ですが、Form Plant では file フィールドとしてそのまま使い続けられます。


移行ツールの警告レポートで、[mwform_file] / [mwform_image] を file フィールドに変換した旨の info 表示
移行ツールの警告レポートで、[mwform_file] / [mwform_image]file フィールドに変換した旨の info 表示

5.2 日本語フィールド名の英数字化

Form Plant のフィールド名は英数字とアンダースコアのみです。移行ツールは次のロジックで日本語名を変換します。

  1. すでに英数字のみなら、そのまま使う
  2. よくあるフィールド名は辞書で英訳(お名前your_nameメールアドレスemail電話番号tel郵便番号zipお問い合わせ内容inquiry など)
  3. 辞書にない名前は、フィールド型をもとにした連番で生成(例: お申込み日text_1、次のテキストは text_2
  4. 名前が衝突した場合は末尾に _2_3 を付与

連番フォールバックになったフィールドは、何のフィールドか分かりにくくなるので、移行後に編集画面で分かりやすい名前に変更しておくと、後のメンテナンスが楽になります(その場合、メール本文の差し込みタグやフックのフィールド名も合わせて更新してください)。

6. デザインをそのまま引き継ぐには(こだわりたい方向け)

「移行したらフォームの見た目を、MW WP Form のときと同じにしたい」場合の考え方を説明します。ここは仕組みを理解しておくと対応しやすくなります。

仕組み

  • 移行直後は Form Plant 標準の見た目です。 v1.2 以上では、移行フォームは HTML テンプレート off・標準デザイン on で生成されるため、「すぐに動く・そこそこ見栄えがする」状態から始まります。これが多くの人にとってのゴールです(ステップ 5.5)。
  • 旧フォームの HTML 構造は保存されています。 移行ツールは MW WP Form のテンプレート(テーブルレイアウトなどの HTML 構造)を保ったまま、各項目を Form Plant のプレースホルダに置き換えて HTML テンプレートとして生成しています。初期状態では off ですが、「HTML テンプレートを使用」を on にすれば、MW WP Form の項目の並び・レイアウトの骨格を呼び戻せます
  • ただし、MW WP Form 用の CSS はそのままでは効きません。 Form Plant は MW WP Form の CSS クラス(mw_wp_form など)を自動付与しないため、テーマやカスタム CSS で mw_wp_form 系のクラスにスタイルを当てていた場合は、そのスタイルは適用されません。旧デザインを忠実に引き継ぐには、この点の対応が必要になります。

最大の違い: テンプレートが「入力画面」と「確認画面」に分離される

デザイン移行で一番押さえておきたいのが、テンプレートの持ち方の違いです。

MW WP Form では、入力・確認・完了を 1 つのテンプレート(post_content)で兼用し、画面の状態に応じて表示を切り替えていました。一方 Form Plant では、「入力画面 HTML テンプレート」と「確認画面 HTML テンプレート」の 2 つに分かれています。移行ツールは、MW WP Form の 1 つのテンプレートを、この 2 つに自動で分割して保存します。


MW WP Form の 1 つのテンプレートが、移行ツールにより「入力画面 HTML テンプレート」と「確認画面 HTML テンプレート」の 2 つに分割される図
MW WP Form の 1 つのテンプレートが、移行ツールによって入力画面・確認画面の 2 つの HTML テンプレートに分割される

分割された 2 つのテンプレートは、フィールドの並び・レイアウトの骨格は共通です。違うのは次の 2 点だけです。

  • フィールド部分: 入力画面は入力欄([fplant_field name="…"])、確認画面は入力された値の表示([fplant_value name="…"])になります。
  • ボタン部分: 入力画面には「確認へ進む / 送信」ボタン、確認画面には「戻る」と「送信」ボタンが振り分けられます。

つまり、デザインを調整したいときは、この 2 つのテンプレートをそれぞれ編集することになります。両方のフィールド部分は同じ構造なので、入力画面を整えたら、同じ要領で確認画面側も揃えれば OK です。多くのデザイン移行は、この「入力画面 HTML テンプレート」と「確認画面 HTML テンプレート」を on にして調整するだけで、せいぜい CSS を少し足す程度で需要を満たせます。

なお MW WP Form のクラスを自動付与しない理由ですが、Form Plant ではクラスの付与先要素が MW WP Form と異なること、そして mw_wp_form_input のようなクラスは入力 / 確認 / 完了で切り替わる「状態クラス」であり、静的に固定すると挙動が食い違うことが理由です。中途半端に似せるより、Form Plant の標準クラスに合わせて整える方が結果的に扱いやすい、という判断です。

見た目を引き継ぐ 3 つの方法

方法 A: 既存 CSS のセレクタを Form Plant 用に書き換える(推奨)
HTML 構造はほぼ同じなので、CSS のセレクタを Form Plant のクラス(fplant-form など)に合わせて書き換えるのが、結果的に一番素直です。ブラウザの開発者ツールで生成後のフォームの構造を確認し、必要なスタイルを当て直します。

方法 B: Form Plant のデザインプリセット / カスタム CSS 機能を使う
Form Plant には複数のデザインプリセットと、フォームごとのカスタム CSS 機能があります。ゼロから作り直す前提なら、これを使って整える方が早い場合もあります。「移行を機にデザインも刷新する」という割り切りも一つの選択肢です。

方法 C: 旧 CSS をできるだけ活かしたい場合
どうしても既存の CSS をそのまま使いたい場合は、フォーム設定で form タグに任意のクラスを付与することもできます。ただし前述のとおり、MW WP Form は外側の <div> にクラスを付けていたのに対し Form Plant は form タグに付くため、要素の階層が違い、完全一致はしません。状態クラス(入力 / 確認 / 完了の切り替え)も再現されない点に注意してください。

さらに踏み込んだカスタマイズ: テンプレートのテーマ上書き

CSS だけでは表現しきれない場合、Form Plant には MW WP Form と同じく、利用中のテーマにテンプレートをコピーして、入力欄の出力 HTML そのものを上書きできる機能があります。MW WP Form(v4 以降)で、入力フィールドの HTML をテーマの mw-wp-form/ フォルダにテンプレートを置いてカスタマイズしていた方には、馴染みのある方式だと思います。

Form Plant もまったく同じ考え方で、コピー先のフォルダ名が mw-wp-form/ から form-plant/ に変わるだけです。form-fields/text.php というファイルの並びまで同じなので、既に MW WP Form でテンプレートを作り込んでいた場合は、同じ感覚で移植できます。

MW WP Form Form Plant
コピー元(プラグイン本体) plugins/mw-wp-form/templates/form-fields/text.php plugins/form-plant/templates/form-fields/text.php
コピー先(テーマ) themes/お使いのテーマ/mw-wp-form/form-fields/text.php themes/お使いのテーマ/form-plant/form-fields/text.php

テーマにコピーされたテンプレートが優先して読み込まれます(子テーマ → 親テーマ → プラグイン本体の順)。コピー先はテーマ内のファイルなので、プラグインを更新しても上書きした内容は失われません。

さらに Form Plant では、入力画面だけでなく確認画面の表示形式も同じ方式で上書きできます。 入力欄は form-fields/、確認画面のフィールド表示は confirm-fields/、確認画面全体のレイアウトは confirmation.php をコピーします。入力画面と確認画面のそれぞれを HTML レベルで柔軟に作り込めます。

上書きしたいもの コピー元(プラグイン本体) コピー先(テーマ)
入力欄(input タグ)の表示 templates/form-fields/{型}.php form-plant/form-fields/{型}.php
確認画面のフィールド表示 templates/confirm-fields/{型}.php form-plant/confirm-fields/{型}.php
確認画面全体のレイアウト templates/confirmation.php form-plant/confirmation.php

{型}textemailtextareaselect などのフィールド型です。MW WP Form でテーマ側にテンプレートを置いてデザインを作り込んでいたサイトでも、同じ発想のまま移行できるのが Form Plant の強みです。

7. メール設定の移行(参考)

7.1 管理者メール・自動返信メール

宛先・CC・BCC・件名・本文・差出人などの設定は、Form Plant の email_admin(管理者メール)/ email_user(自動返信メール)に変換されます。自動返信メールは、元の「自動返信メールの送信先フィールド指定」を引き継ぎます。

前述のとおり、自動返信の宛先フィールドが移行後のフォームに実在するかは、移行後に必ず確認してください。

7.2 差し込みタグの変換

メール本文の差し込みタグは、Form Plant の記法に変換されます。

MW WP Form Form Plant
{お名前}(日本語名) {field:your_name}
{email}(英数字名) {field:email}
{会員番号}(カスタムメールタグ) {field:member_number}

日本語フィールド名のタグは、フィールド名の英数字化(第 5 章)と同じマップで自動的に置き換わります。

8. カスタムメールタグの移行(新機能)

MW WP Form の [mwform_custom_mail_tag] は、画面表示・メール本文・データ保存のすべてに動的な値を差し込める便利な機能でした。Form Plant では、この受け皿として custom_mail_tag という新しいフィールド型を v1.2 で追加しました。

移行ツールは [mwform_custom_mail_tag name="会員番号"]custom_mail_tag フィールド(name は member_number などに英数字化)へ変換します。値そのものはフックで供給する仕組みなので、移行後にフックの書き換えが必要です。

// 移行後: フィールド名 member_number の値を供給するフィルター
add_filter( 'fplant_custom_mail_tag_value_member_number', function ( $value, $field, $form_id ) {
    if ( ! empty( $_GET['post_id'] ) ) {
        return get_post_meta( absint( $_GET['post_id'] ), 'member_number', true );
    }
    return $value;
}, 10, 3 );

MW WP Form 側で mwform_custom_mail_tag_* フックを使って値を供給していた場合は、上記のように fplant_custom_mail_tag_value_* へ書き換えてください。カスタムメールタグの対応の詳細は、マニュアルのカスタムメールタグの対応もご覧ください。

9. functions.php のフック(mwform_*)の移行(カスタマイズしている方向け)

functions.php などに書いた mwform_* フックによるカスタマイズは、自動移行されません。手動で Form Plant のフックへ書き換える必要があります。本章では要点だけ押さえ、詳しい before / after の対応例は別途のフック移行編で解説します。

書き換え前に押さえる 3 つの違い

違い 1: フック名の付き方が変わる。 MW WP Form はフォームキー(mw-wp-form-1)がフック名末尾に付きました。Form Plant は、フィールド名が末尾に付くフック(例: fplant_field_initial_value_{フィールド名})と、フォーム全体に発火しコールバック内で $form_id を見て絞り込むフック(例: fplant_redirect_url)の 2 系統です。

違い 2: フォームの識別は「フォーム ID(数値)」。 Form Plant はフォームを数値 ID で識別します。[fplant id="12"]12 がフォーム ID です。

違い 3(最重要): フィールド名が日本語 → 英数字に変わる。 フックのコールバックでも、移行後の新しいフィールド名(英数字キー)を使う必要があります。

フック対応 早見表(抜粋)

やりたいこと MW WP Form Form Plant
フィールドの初期値を設定 mwform_value_* fplant_field_initial_value_{name}
選択肢を動的生成 mwform_choices_* fplant_field_choices_{name}
独自バリデーション mwform_validation_* fplant_validate_field_{name}
メール件名・本文を変更 mwform_admin_mail_* fplant_admin_email_subject / _body
送信完了後に外部連携 mwform_after_send_* fplant_after_submission_complete
リダイレクト先を動的に変更 mwform_redirect_url_* fplant_redirect_url

独自バリデーション(fplant_validate_field_{name})の書き方は、マニュアルのバリデーションフック (PHP)で詳しく解説しています。

書き換え例(フィールドの初期値設定):

// before: MW WP Form
add_filter( 'mwform_value_mw-wp-form-1', function ( $value, $name ) {
    if ( 'email' === $name && is_user_logged_in() ) {
        $value = wp_get_current_user()->user_email;
    }
    return $value;
}, 10, 2 );

// after: Form Plant(フック名の末尾に移行後のフィールド名を付ける)
add_filter( 'fplant_field_initial_value_email', function ( $value, $field, $form_id ) {
    if ( is_user_logged_in() ) {
        $value = wp_get_current_user()->user_email;
    }
    return $value;
}, 10, 3 );

なお、MW WP Form のフックの中には Form Plant に同等のものがないものもあります(多くは Form Plant の標準機能で代替できます)。設計の違いによる「移行できる点・できない点」を含めた詳しい解説、および全フックの before / after の対応例は、マニュアルのフックの移行対応表にまとめています。個々のフックの仕様は PHP フックリファレンス もあわせてご覧ください。

10. よくある質問 (FAQ)

Q. 移行すると元の MW WP Form のフォームは消えますか?
いいえ。移行ツールは新しい Form Plant フォームを別途生成します。元のフォームは公開状態のまま残ります。

Q. 過去のお問い合わせ(送信データ)も移行されますか?
いいえ。移行されるのはフォームの定義のみです。過去データが必要なら、MW WP Form を残すか、先に CSV エクスポートしておいてください。

Q. 同じフォームを何度も移行できますか?
できます。移行のたびに日時付きの別フォームが生成されます。設定を見比べながらやり直せます。

Q. 移行後、MW WP Form は削除してよいですか?
過去の送信データを参照する必要がなく、すべてのページでショートコードの差し替え(第 3 章ステップ 7)を済ませた後であれば、削除して問題ありません。

Q. 移行の警告レポートは後から見られますか?
はい。Form Plant → ツール → MW WP Form Migration タブの一覧から、移行済みフォームのログをいつでも再表示できます。

まとめ

MW WP Form から Form Plant への移行は、移行ツールでフォーム定義・メール設定・画面テンプレートの大部分を自動変換できます。確認画面や豊富なカスタマイズ性を引き継ぐ MW WP Form の代替として、移行したフォームは公開状態・標準デザイン適用で生成されるので、まずは「そのまますぐに動作を試せる」のが特徴です。一方で、送信データは移行されないこと、ショートコードの差し替えとフックの書き換えは手作業であること、旧デザインを忠実に引き継ぐ場合は CSS 調整が必要なことの 3 点は、あらかじめ押さえておくと作業がスムーズです。

移行は非破壊(元フォームを残してコピーを作る)で、何度でもやり直せます。まずは 1 フォームだけ移行し、警告レポートとテスト送信で結果を確かめてから、本格的に進めるのがおすすめです。

ご不明な点や、本記事に載っていないケースがあれば、Form Plant のサポートまでお気軽にお問い合わせください。移行作業の一助になれば幸いです。

なお、筆者自身も長年の MW WP Form ユーザーで、Form Plant はその設計思想やカスタマイズ性を意識して作っています。長くフォームのスタンダードを担ってきた MW WP Form と、作者のキタジマタカシ氏に感謝しつつ、このガイドが移行の一助になればと願っています。