私は仕事上、1週間に1回のペースでWordpressアップデートの対応しています。
そんな私ですが、2020年の3月に青天の霹靂とも言える事実に驚愕しました。
「Contact Form 7 add confirm」プラグインが使えない
なんと、最新版のContact Form 7で、
「Contact Form 7 add confirm」 プラグイン が使えない!!!
「Contact Form 7 add confirm」プラグインというのは、
「Contact Form 7」で作成したフォームに確認画面を表示させるためのプラグインです。
弊社でフォームの確認画面をお客さんに提案するときには
「Contact Form 7 add confirm」プラグインを利用する前提だったので、
今後の提案の方向性を考えさせられる事態です。
私だけかなと思ったら、Wordpressのフォーラムにも記載されていました。
プラグインが動かない原因は「Contact Form 7」のアップデートにあった
今回、動かなくなった環境を整理してみます。
- WordPress 5.7 へのアップデート
- Contact Form 7 バージョン:5.4 へのアップデート
- Contact Form 7 add confirm を導入
- Contact Form 7 のみだと動く
WordPressのアップデートでそこまで動かなくなるというのは、さすがに考えられなかったので、
試しに Contact Form 7のプラグインを 5.3.2 にダウングレードしたところ、正常に動きました
※上記リンク先の一番下からダウングレード版を取得可能
そして注意しておきたいのは、Contact Form 7 5.3.1以下に脆弱性が発表されたばかり。add confirm プラグインを使いたい場合は、選択肢が5.3.2しか選べない状態です。
もし今後、新たな脆弱性が発見されたりしたらと考えると…
絶対絶命の大ピンチです(泣)
動かなくなった原因はContact Form 7のアップデート
なぜ動かなくなったのか。
Contact Form 7 5.4のリリース情報にて「ウェブサイトのフロントエンドで使用される JavaScript が根本的に改修された」と記載されているので、これが原因であることは間違いなさそうです。
普通のプラグインだとアップデート待ちになると思いますが、
実はこのプラグイン、WordPress の最新3回のメジャーリリースに対してテストされていません。最終更新日が3年前ということなので、アップデートされる望みはめっちゃ薄いです。
フォーラムには「プラグインを書き換えることで対策出来る」的なことが書いてありますが、Contact Form 7の今後のアップデートでも、動いてくれる保証はありません。
正直、Contact Form 7は卒業したほうがいいと思う。
使われているユーザーが多いContact Form 7はハッカーなどの標的にされやすく、その対策のためのアップデートが今後も増えていくと思います。
そう考えると、たくさんの WordPressを抱える制作会社にとって、Contact Form 7を使うこと自体がリスクになるかと思われます。
Contact Form 7 の代替案
他のプラグインを検討したところ、確認画面がデフォルトでついているMW WP Form を使うのが、仕様がContact Form 7と近くて一番シンプルかなと思いました。
また、「Formidable Forms」の有料版「Formidable Forms Pro」を一括購入して、ご希望のお客様には年会費を割安で提供することも可能かと思います。
Contact Form 7に新たな脆弱性が見つかることがないように願う
今怖いのは、現在のContact Form 7 で新たな脆弱性が発表されたとき。
修正して対応するというのもありますが、制作会社としては、あまりおすすめしたくないと思いました。
確認画面を廃止するか、有料プラグインにするかのどっちにするかを、お客さんに選んでいただく必要があり、とても心苦しいです。
また、私の会社では全サイトの6割~7割でconfirmプラグインを導入しているので、対応していくだけでも相当な労力になりそうです…
世界のハッカー、これ以上Contact Form 7をいじめるのはやめてくれ!!!