中小企業のIT化を「ワンストップ」支援

MW WP Formが動作しない原因はWP-Optimize|フォーム不具合とキャッシュの関係

WordPressでフォームを設置する際に、多くの方が使っている「MW WP Form」。私もサクラサーバー+MW WP Formでお問い合わせフォームを設置しましたが、「非ログイン時だけフォームが送信できない」という現象に直面。

MW WP Formが正常に動かない?キャッシュとWAFの落とし穴に注意|実体験から学ぶ原因究明の流れ

WordPressサイトで「MW WP Form」を使ってフォームを構築していた際、ログアウト状態でフォームが確認画面・完了画面に進まないという問題に直面しました。

最初は「WAFが原因か?」と考え、サクラサーバーのWAFを無効化。しかし改善せず、次にフォームの確認・完了URLの設定を見直し、作動したりしなかったりという現象が続きました。

一時的に正常に動作したため、「これで解決か」と思いきや、数時間後にまた送信できなくなる。この不安定さが非常に厄介でした。

最終的にたどり着いた原因は、WP-Optimizeのキャッシュ機能です。

WP-Optimizeはページキャッシュを保持することで、ログインユーザーと非ログインユーザーで表示内容に差が出ることがあります。フォームページがキャッシュされていたことで、JavaScriptの送信処理やPOSTの遷移がブロックされていたのです。

ログイン中はキャッシュが無効なので問題が起きず、非ログイン時のみ影響が出るという、まさに落とし穴のような現象。

このようなトラブルを避けるためには:

  • フォーム関連ページはキャッシュ対象から除外
  • JavaScript/CSSの最適化を一度オフにして動作確認
  • WAFやURL設定変更の前に、キャッシュプラグインを疑う習慣をつける

フォームの不具合は「原因が複数に見える」ことが多いため、トラブルシューティングには冷静な切り分けが重要です。