WordPress

MW WP Formで送信できないトラブル、WP Super Cacheのキャッシュ設定で解決

ワードプレスのプラグイン MW WP Form を使っている問い合わせフォームで、内容確認へ進むボタンをクリックするとページを再読込して入力内容が消えてしまうトラブルが発生。導入時は何も問題なかったのにおかしいなぁと思ってググったらすぐに原因が分かりました。

MW WP Formで入力が消えてしまい送信できないトラブルを解決 原因はW3 Total Cacheのキャッシュ - ものくろぼっくす

こちらの記事に書かれてあるとおりキャッシュのプラグインが原因でした。早期解決の大きな助けとなりました、ありがとうございます。

こちらで原因となってしまったプラグインは WP Super Cache で、記事のものとは違いますが設定項目というか解決法はほぼ同じです。原因がすぐに分かった、というより心当たりがあったのは、 MW WP Form 設置&テストの後に WP Super Cache をインストールしてしまったためです。ちゃんとキャッシュ有効の本番環境でテストするべきでした、反省。


WP Super Cache のキャッシュからフォームを設置したURLを除外します。

  1. インストール済みプラグイン一覧の WP Super Cache にある設定ボタンをクリック。
    WordPress Plugin 'WP Super Cache'
  2. WP Super Cache 設定の画面で「詳細」タブを選択。
    WordPress Plugin 'WP Super Cache' 設定画面
  3. ページ下へスクロールしていって「受け付けるファイル名と除外する URI」の項目にある、キャッシュから除外するページの文字列を入力するフィールドにフォームを設置したURLを追加。「文字列を保存」ボタンをクリック。
    WP Super Cacheのキャッシュから「contact」のURLを除外する例
    WordPress Plugin 'WP Super Cache' 設定画面 › 受け付けるファイル名と除外する URI
  4. 参考にした記事に類似した方法としてはココまでですが、 WP Super Cache では別途キャッシュを削除してあげないといけないみたいでした。ページ上部に戻って「簡易」タブを選択。
    WordPress Plugin 'WP Super Cache' 設定画面
  5. キャッシュされているページの削除」の項目にある「キャッシュを削除」ボタンをクリックしてキャッシュファイルを削除。全削除が困る場合は管理バーかFTPで該当ファイルだけ削除、とかでもイケるんじゃないかと思います。
    WordPress Plugin 'WP Super Cache' 設定画面 › キャッシュされているページの削除

以上、参考にさせていただいた記事とはプラグインと手順が少し異なったのでメモしました。どなたかの参考になれば幸いです。