概要と要件
MevvForms Free は、手元で動くランタイムです。公開されたフォームは、バージョン管理された WordPress のフォームレコードから読み出され、本物のラベルとエラーの関連付けとともに描画され、サーバー側で改めて検証され、手元に保存され、失われない通知キューへ渡されます。
- WordPress
- 6.6 以降。WordPress 7.1 まで検証済みです。
- PHP
- 8.1 以降。リリースマトリクスは PHP 8.1〜8.5 を対象としています。
- データの境界
- フォームの定義、送信データ、キューに入ったジョブは、既定では WordPress サイトに留まります。
- 翻訳ファイル
- トルコ語と英語について、編集できる PO、コンパイル済みの MO、POT の各カタログが同梱されています。
訪問者がフォームを表示したり送信したりするあいだ、無料版が外部サービスへライセンス、テレメトリー、AI、更新の要求を出すことはありません。
インストール
- 復元できるデータベースと wp-content のバックアップを取ります。
- MevvForms Free の ZIP をアップロードして有効化します。
- MevvForms のデータベーステーブルが作成されたこと、そして管理者が管理画面を開けることを確認します。
- 移行のプレビュー、インポート、ヘルスチェックが終わるまで、移行元のフォームプラグインは有効なままにしておきます。
- 保存されたフォームがリリース済みの Pro モジュールを使っている場合にかぎり、対応する Pro の補助パッケージをインストールします。
Pro を入れているあいだに無料版パッケージを削除しないでください。保存されたフォームのランタイムは無料版のものであり、Pro はそれを拡張します。
フォームの描画と送信
公開したフォームは [mevvforms id="123"] で埋め込みます。レンダラーは、安定した項目識別子、本物のラベル、説明文、エラー要約の対象、そして現在のフォームのリビジョンにひも付いた署名付きセッションを出力します。
- 必須かどうかと検証ルールは、サーバーが持つスキーマから取られます。
- 隠された値や未知のクライアント値が、サーバー側のルールを緩めることはできません。
- 有効な送信は、通知の副作用が動くより先に送信データを作成します。
- レスポンスに含まれるのは、設定されたメッセージか安全なリダイレクトであって、保存された項目の値ではありません。
ページを開いたあとにフォームが変わった場合は、署名付きセッションが現在のリビジョンと一致するよう、送信の前にページを再読み込みしてください。
巻き戻せる WPForms からの移行
移行は読み取り専用で始まります。プレビューには、対応付けられた項目、通知、確認、埋め込み、そして未対応の設定が並びます。適用すると、下ごしらえ済みの MevvForms フォームが一つ作成または更新され、移行元のハッシュが記録されます。WPForms のデータ、リビジョン、テーブル、ページの内容が削除されることはありません。
- 適用する前に、プレビューが寸分違わないことを求めてください。
- フォームを下ごしらえ済みとしてインポートし、移行元のハッシュをもう一度突き合わせます。
- 切り替えのヘルスゲートを実行します。公開、描画、署名付きのテスト送信、手元の送信データ、キューに入った通知です。
- 移行元のプラグインを停止してよいのは、これらの確認をすべて通ったあとだけです。
- いずれかの確認に失敗した場合、切り戻しが以前の有効なプラグイン一覧を復元し、インポートしたフォームを下書きに戻します。
実測した mevvshop.com の棚卸しは、4 項目、通知 1 件、確認 1 件、稼働中の埋め込み 1 件を持つ移行元フォーム 1 件です。これらの数はそのサイトのリリース基準であって、あらゆる WPForms のフォームについての約束ではありません。
送信データとプライバシーの境界
送信データと型付きの項目の写しは、専用のローカルテーブルに保存されます。パスワード、カード情報、CVV、WordPress の nonce、セッショントークン、そして store=false と印を付けた項目が、送信データの値に書かれることはありません。
- IP アドレスは、レート制限に必要な場面でのみ、サイト固有の HMAC として表されます。
- テキスト、数値、日付の写しは、元の項目の同一性を変えずに、あとからの検索を支えます。
- 送信データまたは outbox の書き込みが失敗した場合、その送信のトランザクション全体が巻き戻されます。
- 本番の記録に残るのは、フォーム、送信データ、ジョブの識別子だけです。送信された値が記録されることはありません。
通知と確認
通知は失われないジョブです。メールの障害が、受け付けた送信データを消すことはできません。一時的な失敗は上限付きの遅延で再試行され、設定に起因する恒久的なエラーは管理者の対応を待って止まります。
- ヘッダー
- 宛先とヘッダーの差し込みタグは検証され、CR/LF の注入は取り除かれます。
- 本文
- HTML は、出力される文脈に応じてエスケープまたは除去されます。
- 確認
- メッセージ、同一サイト内のページ、許可リストに載ったリダイレクトのいずれにするかは、保存されたスキーマから選ばれます。
- 冪等性
- 同じ通知ジョブキーが、同じ副作用を二度起こすことはできません。
無料版と Pro の境界
無料版が受け持つのは、頼れるランタイムです。スキーマ、基本の項目、アクセシブルな描画、サーバー側の検証、手元に残る送信データ、outbox の通知、確認、二言語の管理画面、そして巻き戻せる WPForms からの移行。
Pro は、リリース済みの高度なモジュールのための補助です。条件付きのワークフロー、複数ステップのコンバージョンツール、ドキュメント、コマース、連携、分析、開発者向けの画面は、それぞれのリリース基準が満たされたときにだけ使えるようになります。保存された Pro の設定は、インストールされた Pro のコードが残っているかぎり、あとでライセンスが切れても、描画と送信を続けられなければなりません。
ロードマップの項目が、動く機能として宣伝されることはありません。Pro のモジュールを前提にフォームを設計する前に、インストール済みのバージョンとリリースノートを確認してください。
トラブルシューティングと切り戻し
- 以前のショートコードが空になる
- その移行元 ID に有効な移行の対応付けがあること、そして wpforms のショートコードを別のプラグインが持っていないことを確認してください。
- 送信でセッションの期限切れと表示される
- ページを再読み込みし、最新の公開リビジョンに対して送信してください。
- 通知が待機したままになる
- キューの状態を開き、設定に起因する恒久的なエラーを直すか、一時的な転送エラーであれば予定された再試行を待ってください。
- 切り替えが WPForms を停止しなかった
- ヘルスの結果を読んでください。描画、送信、送信データ、ジョブのいずれかの検証に失敗したため、安全のためのゲートが WPForms をそのままにした、あるいは元に戻したということです。
サポートには、プラグイン、WordPress、PHP のバージョンと、安全なエラーコードをお知らせください。ログを送る前に、項目の値、顧客データ、セッショントークン、nonce、ライセンスキーを取り除いてください。